روش های جنگیدن با کدی که Accept نمی شه!

rezashiri

Well-Known Member
ارسال ها
1,458
لایک ها
325
امتیاز
83
#21
بازم نشد.

مثلا test1 اینه:

کد
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
using namespace std;

vector<int> stovect(string x) //converts a string to a vector
{
	   vector<int> ans;
	   for(int i=x.length()-1;i>=0;i--)
	   {
			 ans.push_back(x[I]-'0');
	   }
	   return ans;
}

vector<int> operator +(vector<int> x,vector<int> y)
{

	   vector<int> ans;
	   ans.resize(max(x.size(),y.size())+3,0);//3 more digits
	   for(int i=0;i<x.size();i++) ans[I]+=x[I];
	   for(int i=0;i<y.size();i++) ans[I]+=y[I];
	   for(int i=0;i<ans.size()-1;i++)
	   {
			 if(ans[I]>9)
			 {
				    ans[i+1]+=ans[I]/10;
				    ans[I]%=10;
			 }
	   }
	   return ans;
	   
	   
}

void print(vector<int> x)
{
	   int flag=x.size()-1;
	   for(;x[flag]==0;flag--);
	   if(flag<=0) cout<<"0"; 
	   for(;flag>=0;flag--) cout<<x[flag];
	   cout<<endl;
}

int main()
{
	   string a,b;
	   cin>>a>>b;
	   vector<int> one,two;
	   one= stovect(a);
	   two= stovect(b);
	   print(one+two);
	   return 0;
}
وtest2 اینه:

کد
#include <stdio.h>
#include <conio.h>
int main()
{
    char s1[300],s2[300];
    int ragham1[300],ragham2[300],sum[500],k1=0,k2=0,j=0;
    ragham1[0]=0;
    ragham2[0]=0;
    sum[0]=0;
    scanf("%s%s",&s1,&s2);
   
    for(int i=0;s1[I];i++)
    {
		  if(s1[I]=='0') ragham1[i+1]=0;
		  if(s1[I]=='1') ragham1[i+1]=1;
		  if(s1[I]=='2') ragham1[i+1]=2;
		  if(s1[I]=='3') ragham1[i+1]=3;
		  if(s1[I]=='4') ragham1[i+1]=4;
		  if(s1[I]=='5') ragham1[i+1]=5;
		  if(s1[I]=='6') ragham1[i+1]=6;
		  if(s1[I]=='7') ragham1[i+1]=7;
		  if(s1[I]=='8') ragham1[i+1]=8;
		  if(s1[I]=='9') ragham1[i+1]=9;
		  k1++;
    }

    for(int i=0;s2[I];i++)
    {
		  if(s2[I]=='0') ragham2[i+1]=0;
		  if(s2[I]=='1') ragham2[i+1]=1;
		  if(s2[I]=='2') ragham2[i+1]=2;
		  if(s2[I]=='3') ragham2[i+1]=3;
		  if(s2[I]=='4') ragham2[i+1]=4;
		  if(s2[I]=='5') ragham2[i+1]=5;
		  if(s2[I]=='6') ragham2[i+1]=6;
		  if(s2[I]=='7') ragham2[i+1]=7;
		  if(s2[I]=='8') ragham2[i+1]=8;
		  if(s2[I]=='9') ragham2[i+1]=9;
		  k2++;
    }
//----------------
if(k1==k2){
for(int i=k1;i>0;i--)
{
	   if(ragham1[I]+ragham2[I]<10)
	   sum[I]=ragham1[I]+ragham2[I];
	   if(ragham1[I]+ragham2[I]>=10 && i>1)
	   {sum[I]=(ragham1[I]+ragham2[I])%10;  ragham2[i-1]+=((ragham2[I]+ragham1[I])/10)%10;}
	   
	   if(ragham1[I]+ragham2[I]>=10)
	   {sum[1]=ragham1[1]+ragham2[1];}
	   
}

for(int i=1;i<=k1;i++)
{
	 printf("%d",sum[I]);
} 
	    }

//----------------
if(k1>k2)
{
	    for(int i=k1;i>=k2-1;i--)
	    {
			  if(k2>=j)
			  {ragham2[I]=ragham2[k2-j]; j++;}
	    }
	    
for(int i=1;i<=(k1-k2);i++)
{
	   ragham2[I]=0;
}

for(int i=k1;i>0;i--)
{
	   if(ragham1[I]+ragham2[I]<10)
	   sum[I]=ragham1[I]+ragham2[I];
	   if(ragham1[I]+ragham2[I]>=10 && i>1)
	   {sum[I]=(ragham1[I]+ragham2[I])%10;  ragham2[i-1]+=((ragham2[I]+ragham1[I])/10)%10;}
	   
	   if(ragham1[I]+ragham2[I]>=10)
	   {sum[1]=ragham1[1]+ragham2[1];}
	   
}


for(int i=1;i<=k1;i++)
{
	 printf("%d",sum[I]);
} 
	   
} 
//------------------
if(k2>k1)
{
	    for(int i=k2;i>=k1-1;i--)
	    {
			  if(k1>=j)
			  {ragham1[I]=ragham1[k1-j]; j++;}
	    }
	    
for(int i=1;i<=(k2-k1);i++)
{
	   ragham1[I]=0;
}

for(int i=k2;i>0;i--)
{
	   if(ragham1[I]+ragham2[I]<10)
	   sum[I]=ragham1[I]+ragham2[I];
	   if(ragham1[I]+ragham2[I]>=10 && i>1)
	   {sum[I]=(ragham1[I]+ragham2[I])%10;  ragham2[i-1]+=((ragham2[I]+ragham1[I])/10)%10;}
	   
	   if(ragham1[I]+ragham2[I]>=10)
	   {sum[1]=ragham1[1]+ragham2[1];}
	   
}


for(int i=1;i<=k2;i++)
{
	 printf("%d",sum[I]);
} 
	   
} 
				
    return 0;
}
input.txt اینه:

کد
24566 6930
16113 17685
20198 3044
5941 15364
13878 3936
4528 19968
3113 21924
10609 4904
7882 9205
5402 18444
22361 20856
21386 1063
3192 12614
3097 5228
8390 716
17753 3692
4964 7221
6067 3989
1346 17261
24276 7234
6177 2375
12017 5113
19048 6766
4231 3324
و .bat اینه:

کد
@echo off
echo Test1
test1.exe<input.txt>output1.txt
fc output1.txt ok1.txt
echo Test2
test2.exe<input.txt>output2.txt
fc output2.txt ok2.txt
echo end of testing
حالا وقتی bat رو اجرا می کنم فقط اولین تست رو چک می کنه.

[/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I][/I]
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
#22
نمی دونم چه جوری باید درستش کرد!! تو لینوکس که همین کد یا wine درست کار می کنه!
 
ارسال ها
143
لایک ها
79
امتیاز
0
#23
در جواب rezashiri باید بگم من فایل bat رو اجرا کردم و مشکلی نداشت . خروجی اش هم این بود (چون من فایل ok.txt رو روی کامپیوترم نداشتم)

کد
Test1
Comparing files output1.txt and OK1.TXT
FC: cannot open OK1.TXT - No such file or folder

Test2
Comparing files output2.txt and OK2.TXT
FC: cannot open OK2.TXT - No such file or folder

end of testing
می شه بگی مشکلش چیه؟ درسته دیگه!
 

rezashiri

Well-Known Member
ارسال ها
1,458
لایک ها
325
امتیاز
83
#24
navidjalalmanesh گفت
در جواب rezashiri باید بگم من فایل bat رو اجرا کردم و مشکلی نداشت . خروجی اش هم این بود (چون من فایل ok.txt رو روی کامپیوترم نداشتم)

کد
Test1
Comparing files output1.txt and OK1.TXT
FC: cannot open OK1.TXT - No such file or folder

Test2
Comparing files output2.txt and OK2.TXT
FC: cannot open OK2.TXT - No such file or folder

end of testing
می شه بگی مشکلش چیه؟ درسته دیگه!
توی کامپیوتر من که فقط تست اول رو جواب می ده...

ولی با goto start درست شد ولی این دفعه قطع نمی شه ....
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
#25
rezashiri گفت
navidjalalmanesh گفت
در جواب rezashiri باید بگم من فایل bat رو اجرا کردم و مشکلی نداشت . خروجی اش هم این بود (چون من فایل ok.txt رو روی کامپیوترم نداشتم)

کد
Test1
Comparing files output1.txt and OK1.TXT
FC: cannot open OK1.TXT - No such file or folder

Test2
Comparing files output2.txt and OK2.TXT
FC: cannot open OK2.TXT - No such file or folder

end of testing
می شه بگی مشکلش چیه؟ درسته دیگه!
توی کامپیوتر من که فقط تست اول رو جواب می ده...

ولی با goto start درست شد ولی این دفعه قطع نمی شه ....
Ctrl+Break بزنید تا قطع شه
 
بالا