题解 | #[NOIP2011]数字反转#

[NOIP2011]数字反转

https://ac.nowcoder.com/acm/problem/16584

解决此题的关键在于如何对一个整数进行反转,而且不是普通的反转,反转必须满足反转后的数是常见的整数形式,比如-1200,反转后必须是-21,而不是-0021,这样的话我们就不能通过普通的反转了。我们可以先把获取到的字符串转变成整型(Integer.parseInt()方法),得到的整型判断其大小是否为负数,正数的话可以通过遍历自加得到新字符串,如果是负数的话就要注意“-”,所以遍历的最小索引值是1,后面再对为负数的val,进行输出最前面加“-”,从而能够解决此题!

import java.util.*; public class Main {

public static void main(String[] args) {
	Scanner sc=new Scanner(System.in);
	String str=sc.nextLine();
	int val=Integer.parseInt(str);
	String s="";
	if(val<0) {
		
		for(int i=str.length()-1;i>0;i--) {
			s=s+Character.toString(str.charAt(i));
		}
		
	}
	else {
		for(int i=str.length()-1;i>=0;i--) {
			s=s+Character.toString(str.charAt(i));
		}
	}
	int v=Integer.parseInt(s);
	if(val<0) {
		System.out.print("-"+v);
	}
	else {
		System.out.print(v);
	}
	 
}
    

}

全部评论

相关推荐

见见123:简历没有啥问题,是这个社会有问题。因为你刚毕业,没有工作经历,现在企业都不要没有工作经历的。社会病了。
点赞 评论 收藏
分享
06-17 21:57
门头沟学院 Java
白友:噗嗤,我发现有些人事就爱发这些,明明已读不回就行了,就是要恶心人
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务