CodeForces-271A-Beautiful Year
2014-10-14 21:22
302 查看
A. Beautiful Yeartime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputIt seems like the year of 2013 came only yesterday. Do you know a curious fact? The year of 2013 is the first year after the old 1987 with only distinct digits.Now you are suggested to solve the following problem: given a year number, find the minimum year number which is strictly larger than the given one and has only distinct digits.InputThe single line contains integer y (1000 ≤ y ≤ 9000) —the year number.OutputPrint a single integer — the minimum year number that is strictly larger than y and all it's digits are distinct. It is guaranteed that theanswer exists.Sample test(s)input
1987output
2013input
2013output
2014最初做法:运用java字符串与数字间的切换,再将数字导入集合,判断基本元素个数多少来判断是否每个数字都不一样import java.util.*;public class BeautifulYear {public static void main(String[]args){Scanner in=new Scanner(System.in);String xString=in.next();StringBuffer xBuffer=new StringBuffer(xString);Set set=new HashSet();int temp;while(true){temp=Integer.parseInt(xBuffer.toString());temp++;xBuffer=new StringBuffer(String.valueOf(temp));for(int i=0;i<4;i++){set.add(xBuffer.charAt(i));}if(set.size()==4)break;set.clear();}System.out.println(temp);}}改进,运用单纯的‘%’以及‘/‘操作符进行取余以及求整操作,得到每个数字的各位的数值,%的数值,/筛选出下个数量级的数据继续重复步骤,代码改用c++操作#include<iostream>#include<string>using namespace std;int main(){int q, b, s, g, x;int y, z;cin >> x;x++;while (1){q = x / 1000;y = x % 1000;b = y / 100;z = y % 100;s = z / 10;g = z % 10;if (q != b&&q != s&&q != g&&b != s&&b != g&&g != s)break;x++;}cout << x;system("pause");return 0;}
相关文章推荐
- CodeForces 271A - Beautiful Year
- 看个人思路吧,清晰的话就简单 CodeForces 271A - Beautiful Year
- CodeForces 271A
- codeforces水题100道 第十三题 Codeforces Round #166 (Div. 2) A. Beautiful Year (brute force)
- codeforces 271A(Beautiful Year) Java
- Codeforces 209 div2 C. Prime Number
- CodeForces 445E DZY Loves Colors
- CodeForces - 554B Ohana Cleans Up (模拟)水
- codeforces-772C-Destroying Array
- codeforces 798C 数学
- Codeforces 230E Triangles【思维】
- CodeForces 315B Sereja and Array
- codeforces 558B Amr and The Large Array
- Codeforces 579A. Raising Bacteria(位运算)
- [codeforces]A. Efim and Strange Grade——贪心+字符串处理
- CodeForces 772D. Varying Kibibits
- codeforces 864F 图论
- codeforces-363A. Soroban
- CodeForces-483C Diverse Permutation
- CodeForces 665D Simple Subset