您的位置:首页 > 其它

网易2018校园招聘第2题

2017-09-22 22:58 155 查看
题目:为了得到一个数的"相反数",我们将这个数的数字顺序颠倒,然后再加上原先的数得到"相反数"。例如,为了得到1325的"相反数",首先我们将该数的数字顺序颠倒,我们得到5231,之后再加上原先的数,我们得到5231+1325=6556.如果颠倒之后的数字有前缀零,前缀零将会被忽略。例如n
= 100, 颠倒之后是1. 

import java.util.Scanner;

/**
* Created by Administrator on 2017/9/22.
*/
public class xiangfanshu {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n=in.nextInt();
in.close();
int count=(int)(Math.log(n)/Math.log(10));
int m=n;
int r=0;
while(n>0){
r+=n%10*Math.pow(10,count--);
n=n/10;

}
System.out.print(r+m);
}
}


设一个数为n,那么count=(int)(Math.log(n)/Math.log(10)),此时count即为n的位数-1。

设m=3,则第一次循环中m--不是2,而是3。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: