Uva444題

李方羽
uva第444題
uva444
我寫的有兩條測資TLE
想請問哪邊應該改進
感謝
Code:
#include <iostream>
#include <string>
#include <sstream>
#include <algorithm>
using namespace std;
int main()
{
string s;
while(getline(cin,s))
{
if (isdigit(s[0]))
{
int n=s.size()-1;
while(n>=0)
{
if((100+(s[n-1]-'0')*10+(s[n-2]-'0'))>99&&(100+(s[n-1]-'0')*10+(s[n-2]-'0'))<123&&s[n]==1)
{
cout<<char((100+(s[n-1]-'0')*10+(s[n-2]-'0')));
n=n-3;
}
if(((s[n-1]-'0')+(s[n]-'0')*10)>64&&((s[n-1]-'0')+(s[n]-'0')*10)<100&&s[n]!=1)
{
cout<<char((s[n-1]-'0')+(s[n]-'0')*10);
n=n-2;
}
}
cout<<endl;
}

else
{
string str,addstr;
for(int i=0; i<s.size(); i++)
{
stringstream ss;
ss<<(int(s[i]));
ss>>str;
addstr+=str;
}
reverse(addstr.begin(),addstr.end());
cout<<addstr<<endl;
}

}
return 0;
}

回到頂部