猿辅导算法题2:不幸运数有01478,求1247的幸运价格?

//1247 幸运价格为2222。
	public static int getLuckPrice(int price ,List<Integer> unLuckNumbers){
		unLuckNumbers.add(0);
		Collections.sort(unLuckNumbers);
		String str = price +"";
		int min =Integer.MAX_VALUE;
		int finalNum=0;
		
		boolean flag=false;
		for(int j=0;j<unLuckNumbers.size();j++){
			if(j==0) {min=unLuckNumbers.get(j); continue;}
			if(++min < unLuckNumbers.get(j)){
				break;
			}
		}
		
		for(int i=0;i<str.length();i++){
			int num = Integer.parseInt(str.charAt(i)+"");
			if(!flag){
				for(int j=0;j<unLuckNumbers.size();j++){
					if(num==unLuckNumbers.get(j)){
						num++;
						flag =true;
					}
				}
				finalNum = finalNum + num * (int)Math.pow(10,str.length()-1-i);
			}else{
				finalNum = finalNum + min * (int)Math.pow(10,str.length()-1-i);
			} 
		}
		return finalNum;
	}
全部评论
大体思路是这样,但是如果那一位是9而9又正好是不幸数字,就需要回滚到上一位(PS:昨天写成一坨翔了,考完发现少考虑好多东西)
点赞 回复 分享
发布于 2016-09-07 14:47

相关推荐

05-23 19:33
重庆大学 Java
只学了传统后端,马上去后端实习了,在想要不要学习agent开发相关的。27秋招和26相比难度如何?
我连备胎都不是却还在...:就暑期实习而言,大厂官宣hc 比 26 多,但是我观察看应该低于 26 的,估计秋招也不简单
点赞 评论 收藏
分享
大愣子衰哥:老哥,是正式还是实习
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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