PAT甲级1058 A+B in Hogwarts

ゞ 浴缸里的玫瑰 2023-06-14 13:56 98阅读 0赞

题意

就是从字符串中取出相应的数值,相加处理后输出就行

  1. #include<iostream>
  2. #include<string>
  3. using namespace std;
  4. int main()
  5. {
  6. string a,b;
  7. int p1=-1,p2=-1;//两个小数点的位置
  8. int g1,g2,s1,s2,k1,k2;
  9. cin>>a>>b;
  10. for(int i=0;i<a.size();i++)
  11. {
  12. if(a[i]=='.')
  13. {
  14. if(p1==-1)p1=i;
  15. else
  16. p2=i;
  17. }
  18. }
  19. g1=stoi(a.substr(0,p1));
  20. s1=stoi(a.substr(p1+1,p2-p1-1));
  21. k1=stoi(a.substr(p2+1,2));
  22. p1=p2=-1;
  23. for(int i=0;i<b.size();i++)
  24. {
  25. if(b[i]=='.')
  26. {
  27. if(p1==-1)p1=i;
  28. else
  29. p2=i;
  30. }
  31. }
  32. g2=stoi(b.substr(0,p1));
  33. s2=stoi(b.substr(p1+1,p2-p1-1));
  34. k2=stoi(b.substr(p2+1,2));
  35. g1+=g2;s1+=s2;k1+=k2;
  36. if(k1>=29)
  37. {
  38. k1%=29;s1+=1;
  39. }
  40. if(s1>=17)
  41. {
  42. s1%=17;g1+=1;
  43. }
  44. cout<<g1<<"."<<s1<<"."<<k1<<endl;
  45. return 0;
  46. }

发表评论

表情:
评论列表 (有 0 条评论,98人围观)

还没有评论,来说两句吧...

相关阅读