代码改变世界

Sicily/1757. Anti-Blot System

2011-07-28 16:21  Min·zc  阅读(180)  评论(0编辑  收藏  举报

字符串处理,给两个数求第三个数


 1 #include <iostream>

 2 #include <string>
 3 using namespace std;
 4 int check(string tem)
 5 {
 6         int nu=1;
 7         int len=tem.size();
 8         for(int i=0;i!=len;i++)
 9                 if(tem[i]>'9'||tem[i]<'0')
10                         nu=0;
11         return nu;
12 }
13 int change(string word)
14 {
15         int len=word.size();
16         int ans=0;
17         for(int i=0;i<len;i++)
18         {
19                 ans*=10;
20                 ans+=(word[i]-'0');
21         }
22         return ans;
23 }
24 int main()
25 {
26         int t;
27         cin>>t;
28         while(t--)
29         {
30                 int nu[3];
31                 int ans[3];
32                 char tem;
33                 string word[3];
34                 cin>>word[0];
35                 nu[0]=check(word[0]);
36                 cin>>tem;
37                 cin>>word[1];
38                 nu[1]=check(word[1]);
39                 cin>>tem;
40                 cin>>word[2];
41                 nu[2]=check(word[2]);
42                 for(int i=0;i<3;i++)
43                         if(nu[i])
44                                 ans[i]=change(word[i]);
45                 if(nu[0]==0)
46                         ans[0]=ans[2]-ans[1];
47                 else if(nu[1]==0)
48                         ans[1]=ans[2]-ans[0];
49                 else
50                         ans[2]=ans[1]+ans[0];
51                 cout<<ans[0]<<" + "<<ans[1]<<" = "<<ans[2]<<endl;
52         }
53 }