暴力模拟即可,开始我尝试记录每个‘-’的位置,然后遍历pos数组,枚举0-9,然而这种写法很恶心。那么自然想到了搜索,每次访问到‘-’枚举0-9即可,进入下一次搜索,注意终止条件是当index==9时,因为使用的是1-base。然后剔除一些非法日期即可符合题意,这样能过 。 #include<iostream> #include<string> int month[] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 }; bool is_prime(int x) { if (x == 0 || x == 1) return fals...