秒一波水题,洗澡去!!!
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.io.StreamTokenizer;
/**
* 题意:给一个年份,要求该年份之后的年,每位数字都不一样。该年份之后,符合要求的最小年份是多少?
*
* @author TinyDolphin
* 2017/6/27 22:30.
*/
public class Main {
public static void main(String[] args) throws IOException {
StreamTokenizer in = new StreamTokenizer(new BufferedReader(new InputStreamReader(System.in)));
PrintWriter out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(System.out)));
int year; // 输入的年份
int a; // 年份的千位
int b; // 年份的百位
int c; // 年份的十位
int d; // 年份的个位
while (in.nextToken() != StreamTokenizer.TT_EOF) {
year = (int) in.nval;
while (++year < 10000) {
a = year / 1000;
b = year / 100 % 10;
c = year / 10 % 10;
d = year % 10;
if (a != b && b != c && c != d && d != a && a != c && b != d) {
break;
}
}
out.println(year);
}
out.flush();
}
}