من یه برنامه رو نوشتم و ارسال کردم.برای اینکه ببینم نتیجه چی شده از کجا باید دید؟
این عکس رو ببینید.
نتیجه همینه که اینحا زده؟:41:
کد:http://www.4shared.com/file/156562557/78f28098/Screenshot.html
Printable View
من یه برنامه رو نوشتم و ارسال کردم.برای اینکه ببینم نتیجه چی شده از کجا باید دید؟
این عکس رو ببینید.
نتیجه همینه که اینحا زده؟:41:
کد:http://www.4shared.com/file/156562557/78f28098/Screenshot.html
آره همونجا که زده زمان غیر مجاز، باید کاری کنی برنامت سریعتر اجرا بشهنقل قول:
و کلی بخوای نتیجه رو ببینی سمت راست از قسمت فرسته، فهرست می تونی انتخاب کنی
نقل قول:
این برنامه رو چجوری نوشتین زمان غیر مجاز داده ؟ میشه سورستون رو بذارین ؟
یعنی منظورتون اینه که یعنی چی که مثلا برنامه ارسال کنیم و سورسشو تو سایت بذاریم ؟نقل قول:
(حالا مثلا چی کار کردما...:whistle:)
نه بابا من کجا همچین حرفی زدم، فکر کنم منظورم رو درست متوجه نشدین.نقل قول:
یعنی منظورتون اینه که یعنی چی که مثلا برنامه ارسال کنیم و سورسشو تو سایت بذاریم ؟
آهان ببخشید . الان با یه لحن دیگه خوندم متوجه شدم . :20:نقل قول:
دوستان یه مسئله ای هست که قراره دو عدد 8 رقمی به ما بده و ما چاپ کنیم که چند درصد عدد اول در این Range وجود داره . خیلی راحت میشه نوشت ولی از گیر خطای زمان غیرمجاز سایت نمیشه رد شد .
یه ذره روش فکر کنین . خود مسئله رو آپ می کنم .
یعنی بد نوشتم؟!شما موفق شدید؟نقل قول:
این برنامه رو چجوری نوشتین زمان غیر مجاز داده ؟ میشه سورستون رو بذارین ؟
اگه راه حل بهتری پیدا کردید من رو هم خبر کنید.من که از لحاظ تغییرات کد دیگه چیز مهمی بلد نبودم.مگر با روش دیگه ای بشه سریعترش کرد.
کد:http://www.filefactory.com/file/a1dd0d5/n/251_cpp
نظر من اینه که یه مساله رو اگر جواب گرفتیم کدش رو بذاریم و بریم سراغ بعدی.اگه مساله ای بی جواب بمونه حیفه.مخصوصا که بالاخره چند نفری دیگه باید بتونیم جواب بگیریم.نقل قول:
دوستان یه مسئله ای هست که قراره دو عدد 8 رقمی به ما بده و ما چاپ کنیم که چند درصد عدد اول در این Range وجود داره . خیلی راحت میشه نوشت ولی از گیر خطای زمان غیرمجاز سایت نمیشه رد شد .
یه ذره روش فکر کنین . خود مسئله رو آپ می کنم .
نه قصد جسارت ندارم . آخه یه کم سخت میشه که برای همچین برنامه ای زمان غیر مجاز بگیره . یعنی برای برنامه های پردازش رشته . چون اولین بار بود باهاش روبرو می شدم . من کماکان جواب نادرست می گیرم .نقل قول:
راستی من مسئله شما رو دیدم . مطمئنین که جواب درست رو خودتون باهاش گرفتین ؟ من که جواب درست نگرفتم .
منظورم مسئله هکرهای غیرحرفه ای هست ؟نقل قول:
خوب فعلا stringld رو حل کردیم تا بریم بعدی، اینم سورس:
کد:#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
using namespace std;
bool cmpFunc(string s1, string s2)
{
return s2.size() > s1.size();
}
int main()
{
typedef vector<string>::iterator Iter;
typedef string::reverse_iterator rIter;
vector<string> v1;
Iter iter1, iter2;
string s;
rIter I1, I2;
size_t iDel;
int iNum;
bool isFound;
cin >> iNum;
while ( iNum != 0 )
{
v1.clear();
for ( int i = 0; i < iNum; i++ )
{
cin >> s;
v1.push_back(s);
}
sort(v1.begin(), v1.end(), cmpFunc);
iDel = 1;
isFound = false;
while ( iDel < v1[0].size() )
{
iter1 = v1.begin();
while ( iter1 < v1.end() )
{
iter2 = iter1 + 1;
while ( iter2 < v1.end() )
{
if ( iter1->size() != iter2->size() )
break;
for ( I1 = iter1->rbegin(), I2 = iter2->rbegin();
I1 < iter1->rend() - iDel; I1++, I2++ )
{
if ( *I1 != *I2 )
break;
}
if ( I1 == iter1->rend() - iDel )
{
isFound = true;
break;
}
iter2++;
}
if ( isFound )
break;
iter1++;
}
if ( isFound )
break;
iDel++;
}
cout << iDel - 1 << endl;
cin >> iNum;
}
return 0;
}
علاقه زیادی به استفاده از Iterator دارین. :31:نقل قول:
مونده مسئله هکرها .
این همون کدی هست به زبان جاوا که accept شده . اگه کسی جاوا بلده به ++C تبدیل کنه .
کد:import java.util.Scanner;
import java.util.StringTokenizer;
public class Avm {
public static void main(String args[])
{
Scanner input=new Scanner(System.in);
int num=input.nextInt();
input.nextLine();
String str[]=new String[num];
for(int a=0;a<num;a++)
str[a]=input.nextLine();
for(int i=0;i<num;i++)
{
StringTokenizer tokens=new StringTokenizer(str[i]);
int count=tokens.countTokens();
int ma=tokens.countTokens();
String arr[]=new String[tokens.countTokens()];
for(int j=0;tokens.hasMoreTokens();j++)
{
arr[j]=tokens.nextToken();
}
for(int j=0;j<arr.length;j++)
{
for(int b=0;b<arr[j].length();b++)
{
int key=1;
if(!Character.isUpperCase(arr[j].charAt(0)))
{
count--;
break;
}
if(b!=0)
{
switch(arr[j].charAt(b))
{
case'a':
case'A':
if(Character.isUpperCase(arr[j].charAt(b)))
{
key=0;
count--;
break;
}
continue;
case'e':
case'E':
if(Character.isUpperCase(arr[j].charAt(b)))
{
key=0;
count--;
break;
}
continue;
case'i':
case'I':
if(Character.isUpperCase(arr[j].charAt(b)))
{
key=0;
count--;
break;
}
continue;
case'o':
case'O':
if(Character.isUpperCase(arr[j].charAt(b)))
{
key=0;
count--;
break;
}
continue;
case'u':
case'U':
if(Character.isUpperCase(arr[j].charAt(b)))
{
key=0;
count--;
break;
}
continue;
}
}
if(key==0)
break;
if(!Character.isUpperCase(arr[j].charAt(b)))
{
count--;
break;
}
}
}
System.out.printf("%d out of %d.\n",count,ma);
}
}
}