网易-数字翻转

网友投稿 568 2022-10-02

网易-数字翻转

网易-数字翻转

​​如果 X = 123,则rev(X) = 321; 如果 X = 100,则rev(X) = 1. 现在给出整数x和y,要求rev(rev(x) + rev(y))为多少?

输入描述:

输入为一行,x、y(1 ≤ x、y ≤ 1000),以空格隔开。

输出描述:

输出rev(rev(x) + rev(y))的值

示例1

输入

复制

123 100

输出

复制

223

题解:

#include #include #include using namespace std;int stringToNum(string s){ int ans = 0; for (int i = 0; i < s.length(); i++){ ans += s[i] - 48; ans *= 10; } ans /= 10; return ans;}string numToString(int n){ string ans = ""; while (n > 0){ ans += n % 10 + 48; n /= 10; } reverse(ans.begin(), ans.end()); return ans;}string revNum(string s){ string ans = ""; bool isFirst = true; for (int i = s.length() - 1; i >= 0; i--){ if (s[i] != '0' && isFirst == true){ ans += s[i]; isFirst = false; } else if (isFirst == false){ ans += s[i]; } } return ans;}int main(){ int x, y; while (cin >> x){ cin >> y; //cout << numToString(x) << " " << numToString(y) << endl; //cout << revNum(numToString(x)) << " " << revNum(numToString(y)) << endl; int rx = stringToNum(revNum(numToString(x))); int ry = stringToNum(revNum(numToString(y))); cout << revNum(numToString(rx + ry)) << endl; } return 0;}

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:小程序data-是什么(小程序data-index)
下一篇:小程序url不能加端口号吗(小程序配置域名端口)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~