连云港做企业网站公司,360开户,跨境网站开发公司,百度学术论文查重【问题描述】 2022 年 2 月 22 日 22:20 是一个很有意义的时间#xff0c;年份为 2022#xff0c;由 3 个 2 和 1 个 0 组 成#xff0c;如果将月和日写成 4 位#xff0c;为 0222#xff0c;也是由 3 个 2 和 1 个 0 组 成#xff0c;如果将时间中的时和 分写成 4 位年份为 2022由 3 个 2 和 1 个 0 组 成如果将月和日写成 4 位为 0222也是由 3 个 2 和 1 个 0 组 成如果将时间中的时和 分写成 4 位还是由 3 个 2 和 1 个 0 组成。 小蓝对这样的时间很感兴趣他还找到了其它类似的例子比如 111 年 10 月 11 日 01:112202 年 2 月 22 日 22:02 等等。 请问总共有多少个时间是这种年份写成 4 位、月日写成 4 位、时间写成 4 位后由 3 个一种数字和 1 个另一种数字组成。注意 1111 年 11 月 11 日 11:11 不算因为它里面没有 两种数字。 【答案提交】 这是一道结果填空的题你只需要算出结果后提交即可。本题的结果为一 个整数在提交答案时只填写这个整数填写多余的内容将无法得分。 package a.a;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.List;public class LanQiao13B {static SimpleDateFormat sdf new SimpleDateFormat(yyyyMMddHHmm);static void fun(int i, int j, ListString list) {list.add(i i i j);list.add(i i j i);list.add(i j i i);list.add(j i i i);}static void fun1(ListString list, ListString resultList) {// 因为是由 年 月日 时分 三个组成所以直接做了3个for循环用来拼接for (int m 0; m list.size(); m) {for (int n 0; n list.size(); n) {for (int p 0; p list.size(); p) {// 这里借用SimpleDateFormat来判断是否是正常时间String date list.get(m) list.get(n) list.get(p);try {sdf.parse(date);} catch (ParseException e) {// 遇到非正常时间直接跨过continue;}// 正确的时间给添加到list中用来统计resultList.add(date);}}}}public static void main(String[] args) {ListString resultList new ArrayList();sdf.setLenient(false);for (int i 0; i 10; i) {for (int j i 1; j 10; j) {ListString list new ArrayList();fun(i, j, list);fun1(list, resultList);list new ArrayList();fun(j, i, list);fun1(list, resultList);}}System.out.println(resultList.size());}
}