大家好,我是C++新手
在Dev-C++測都OK
但是丟上來就是RE
請大家幫幫忙!!拜託了!!!
#include<iostream>
using namespace std;
string inttost(long long int $input)
{
char $out[100];
string $output="";
int $i,$a,$k;
$k=0;
$i=1;
while ($input >= 10)
{
$a=$input%10;
if ($a==0)
{$out[$i]='0';}
else if ($a==1)
{$out[$i]='1';}
else if ($a==2)
{$out[$i]='2';}
else if ($a==3)
{$out[$i]='3';}
else if ($a==4)
{$out[$i]='4';}
else if ($a==5)
{$out[$i]='5';}
else if ($a==6)
{$out[$i]='6';}
else if ($a==7)
{$out[$i]='7';}
else if ($a==8)
{$out[$i]='8';}
else if ($a==9)
{$out[$i]='9';}
else
{}
$input=$input/10;
$i++;
}
$a=$input;
if ($a==0)
{$out[$i]='0';}
else if ($a==1)
{$out[$i]='1';}
else if ($a==2)
{$out[$i]='2';}
else if ($a==3)
{$out[$i]='3';}
else if ($a==4)
{$out[$i]='4';}
else if ($a==5)
{$out[$i]='5';}
else if ($a==6)
{$out[$i]='6';}
else if ($a==7)
{$out[$i]='7';}
else if ($a==8)
{$out[$i]='8';}
else if ($a==9)
{$out[$i]='9';}
else
{}
for ($k=1;$k<=$i;$k++)
{
$output=$out[$k]+$output;
}
return $output;
}
string noww(string $input)
{
int $al,$i;
string $output="";
$al=$input.size();
for ( $i=0;$i<$al;$i++)
{
if ($input[$i] !=' ')
{
$output=$output+$input[$i];
}
}
return $output;
}
long long int count(string $input)
{
int $i,$ss;
long long int $num[200];
char $ww[200];
for ($i=0;$i<=199;$i++)
{
$num[$i]=0;
$ww[$i]='_';
}
$ss=0;
for ($i=0;$i<$input.size();$i++)
{
if ($input[$i] >= 48 && $input[$i] <= 57)
{
$num[$ss]=$num[$ss]*10 + int($input[$i])-48;
}
else
{
$ww[$ss]=$input[$i];
$ss++;
}
}
for ($i=0;$i<=$ss;$i++)
{
if ($ww[$i]=='*')
{
$num[$i+1]=$num[$i]*$num[$i+1];
$ww[$i]='+';
$num[$i]=0;
}
else if ($ww[$i]=='/')
{
$num[$i+1]=$num[$i] / $num[$i+1];
$ww[$i]='+';
$num[$i]=0;
}
else if ($ww[$i]=='%')
{
$num[$i+1]=$num[$i] % $num[$i+1];
$ww[$i]='+';
$num[$i]=0;
}
else
{}
}
for ($i=0;$i<=$ss;$i++)
{
if ($ww[$i]=='+')
{
$num[$i+1]=$num[$i] + $num[$i+1];
$ww[$i]='+';
$num[$i]=0;
}
else if ($ww[$i]=='-')
{
$num[$i+1]=$num[$i] - $num[$i+1];
$ww[$i]='+';
$num[$i]=0;
}
else
{}
}
return $num[$ss];
}
int main()
{
string $in,$intmp,$input;
int $a,$al,$wic1,$wic2,$i,$cr;
string $tmp;
while ( getline(cin, $in) )
{
$in=noww($in);
while (int($in.find('(')) >= 0)
{
for ($i=0;$i<$in.size();$i++)
{
if ($in[$i]=='(')
{
$wic1=$i;
}
}
for ($i=$wic1;$i<$in.size();$i++)
{
if ($in[$i]==')')
{
$wic2=$i;
$i=$i+100;
}
}
$input="";
for ($i=$wic1+1;$i<$wic2;$i++)
{
$input=$input+$in[$i];
}
$cr=count($input);
$tmp=inttost($cr);
$intmp="";
for ($i=0;$i<$wic1;$i++)
{
$intmp=$intmp+$in[$i];
}
$intmp=$intmp+$tmp;
for ($i=$wic2+1;$i<$in.size();$i++)
{
$intmp=$intmp+$in[$i];
}
$in=$intmp;
}
cout << count($in) << endl;
}
return 0;
}
大家好,我是C++新手
在Dev-C++測都OK
但是丟上來就是RE
請大家幫幫忙!!拜託了!!!
(2*(3-5%2))*5=40???
#include
using namespace std;
string inttost(long long int $input)
{
char $out[100];
string $output="";
int $i,$a,$k;
$k=0;
$i=1;
while ($input >= 10)
{
$a=$input%10;
if ($a==0)
{$out[$i]='0';}
else if ($a==1)
{$out[$i]='1';}
else if ($a==2)
{$out[$i]='2';}
else if ($a==3)
{$out[$i]='3';}
else if ($a==4)
{$out[$i]='4';}
else if ($a==5)
{$out[$i]='5';}
else if ($a==6)
{$out[$i]='6';}
else if ($a==7)
{$out[$i]='7';}
else if ($a==8)
{$out[$i]='8';}
else if ($a==9)
{$out[$i]='9';}
else
{}
$input=$input/10;
$i++;
}
$a=$input;
if ($a==0)
{$out[$i]='0';}
else if ($a==1)
{$out[$i]='1';}
else if ($a==2)
{$out[$i]='2';}
else if ($a==3)
{$out[$i]='3';}
else if ($a==4)
{$out[$i]='4';}
else if ($a==5)
{$out[$i]='5';}
else if ($a==6)
{$out[$i]='6';}
else if ($a==7)
{$out[$i]='7';}
else if ($a==8)
{$out[$i]='8';}
else if ($a==9)
{$out[$i]='9';}
else
{}
for ($k=1;$k<=$i;$k++)
{
$output=$out[$k]+$output;
}
return $output;
}
string noww(string $input)
{
int $al,$i;
string $output="";
$al=$input.size();
for ( $i=0;$i<$al;$i++)
{
if ($input[$i] !=' ')
{
$output=$output+$input[$i];
}
}
return $output;
}
long long int count(string $input)
{
int $i,$ss;
long long int $num[200];
char $ww[200];
for ($i=0;$i<=199;$i++)
{
$num[$i]=0;
$ww[$i]='_';
}
$ss=0;
for ($i=0;$i<$input.size();$i++)
{
if ($input[$i] >= 48 && $input[$i] <= 57)
{
$num[$ss]=$num[$ss]*10 + int($input[$i])-48;
}
else
{
$ww[$ss]=$input[$i];
$ss++;
}
}
for ($i=0;$i<=$ss;$i++)
{
if ($ww[$i]=='*')
{
$num[$i+1]=$num[$i]*$num[$i+1];
$ww[$i]='+';
$num[$i]=0;
}
else if ($ww[$i]=='/')
{
$num[$i+1]=$num[$i] / $num[$i+1];
$ww[$i]='+';
$num[$i]=0;
}
else if ($ww[$i]=='%')
{
$num[$i+1]=$num[$i] % $num[$i+1];
$ww[$i]='+';
$num[$i]=0;
}
else
{}
}
for ($i=0;$i<=$ss;$i++)
{
if ($ww[$i]=='+')
{
$num[$i+1]=$num[$i] + $num[$i+1];
$ww[$i]='+';
$num[$i]=0;
}
else if ($ww[$i]=='-')
{
$num[$i+1]=$num[$i] - $num[$i+1];
$ww[$i]='+';
$num[$i]=0;
}
else
{}
}
return $num[$ss];
}
int main()
{
string $in,$intmp,$input;
int $a,$al,$wic1,$wic2,$i,$cr;
string $tmp;
while ( getline(cin, $in) )
{
$in=noww($in);
while (int($in.find('(')) >= 0)
{
for ($i=0;$i<$in.size();$i++)
{
if ($in[$i]=='(')
{
$wic1=$i;
}
}
for ($i=$wic1;$i<$in.size();$i++)
{
if ($in[$i]==')')
{
$wic2=$i;
$i=$i+100;
}
}
$input="";
for ($i=$wic1+1;$i<$wic2;$i++)
{
$input=$input+$in[$i];
}
$cr=count($input);
$tmp=inttost($cr);
$intmp="";
for ($i=0;$i<$wic1;$i++)
{
$intmp=$intmp+$in[$i];
}
$intmp=$intmp+$tmp;
for ($i=$wic2+1;$i<$in.size();$i++)
{
$intmp=$intmp+$in[$i];
}
$in=$intmp;
}
cout << count($in) << endl;
}
return 0;
}