关于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; } }