#include<stdio.h> #include<string.h> #include<math.h> struct stu{ int hour; int minute; }party; int su(int a) { int i; if(a==1||a==0) return 0; if(a==2)return 1; if(a>2){ for(i=2;i<=sqrt(a);i++) { if(a%i==0) break; } if(i>sqrt(a)) return 1;} } int main() { struct stu party[10]; int h[10],i=0,b,j; while(scanf("%d:%d",&party[0].hour,&party[0].minute)!=EOF) { scanf("%d:%d",&party[1].hour,&party[1].minute); //h[0]=party[0].hour*2500+party[0].minute; //h[1]=party[1].hour*2500+party[1].minute; b=party[1].hour-party[0].hour; int k=0; if(b==0) { for(i = party[0].minute;i <= party[1].minute;i++) { if(su(2500 * b + i)==1) k++; } } else { for(i = party[0].minute;i<= 59;i++) { if(su(2500 * party[0].hour + i)) k++; } for(i = 0;i <= party[1].minute;i++) { if(su(2500 * party[1].hour + i)) k++; } if(b>=2) { for(j =party[0].hour + 1;j < party[1].hour;j++) { for(i = 0;i < 60;i++) { if(su(2500 * j + i)) k++; } } } } printf("%d\n",k); } return 0; } |
Double click to view unformatted code.