关于521
时间限制:
1000
ms | 内存限制:
65535
KB
难度:
2
-
描述
-
Acm队的流年对数学的研究不是很透彻,但是固执的他还是想一头扎进去。
浏览网页的流年忽然看到了网上有人用玫瑰花瓣拼成了521三个数字,顿时觉得好浪漫,因为每个男生都会不经意的成为浪漫的制造者。此后,流年走到哪里都能看到5、2、1三个数字,他怒了,现在他想知道在连续的数中有多少数全部包含了这三个数字。例如12356就算一个,而5111就不算。特别的,如果他看到了521三个数连续出现,会特别的愤怒。例如35210。
763191 | 张燚 | 关于521 | Accepted | 473 | 10540 | java | 03-15 11:10:51 |
import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner input=new Scanner(System.in);
int num[]=new int[1000005];
int num1[]=new int[1000005];
for(int i=125;i<1000005;i++){
int c=panduan(i+"");
if(c==1){
num[i]=num[i-1]+1;
num1[i]=num1[i-1];
}
else if(c==2){
num[i]=num[i-1]+1;
num1[i]=num1[i-1]+1;
}else{
num[i]=num[i-1];
num1[i]=num1[i-1];
}
}
int e=1;
while(input.hasNext()){
int a=input.nextInt();
int b=input.nextInt();
if(a<2)
a=2;
if(b<125)
b=3;
System.out.println("Case "+(e++)+":"+(num[b]-num[a-1])+" "+(num1[b]-num1[a-1]));
}
}
private static int panduan(String s) {
if(s.indexOf("521")!=-1)
return 2;
if(s.indexOf("1")!=-1&&s.indexOf("2")!=-1&&s.indexOf("5")!=-1){
return 1;
}
return 0;
}
}