1、计算某天是星期几
输入一个年月日,计算出这个日期对应的是星期几
注意:
闰年
公元年分除以4不可整除,为平年。
公元年分除以4可整除但除以100不可整除,为闰年。
公元年分除以100可整除但除以400不可整除,为平年。
公元年分除以400可整除,为闰年。
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 32M,其他语言64M
输入描述:
输入格式:
第一行:年
第二行:月
第三行:日
输出描述:
输出:
星期几
注意星期几请使用英文(Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday)
示例1
输入例子:
2019
08
07
输出例子:
Wednesday
import java.time.format.DateTimeFormatter;
import java.util.Scanner;
import java.time.*;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {public static void main(String[] args) {Scanner in = new Scanner(System.in);String y = in.next();String m = in.next();String d = in.next();StringBuilder sb = new StringBuilder();sb.append(y+"-");if(m.length() == 1)sb.append('0');sb.append(m+"-");if(d.length() == 1)sb.append('0');sb.append(d);DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");LocalDate date = LocalDate.parse(sb.toString(), formatter);String res = date.getDayOfWeek().toString().toLowerCase();System.out.println(res.substring(0,1).toUpperCase()+res.substring(1));}
}
2、求两个整数的最大公约数
求两个整数的最大公约数
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 32M,其他语言64M
输入描述:
第一行输入第一个数
第二行输入第二个数
输出描述:
输出格式为:
有公约数的情况下,输出:The result is 最大公约数
无公约数的情况下,输出:No result
示例1
输入例子:
4
8
输出例子:
The result is 4
import java.util.Scanner;// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {public static void main(String[] args) {Scanner in = new Scanner(System.in);int a = in.nextInt();int b = in.nextInt();in.close();if(a == 0 || b == 0){System.out.println("No result");return;}int ans = gcd(a, b);System.out.println("The result is "+ans);}private static int gcd(int a, int b){return b == 0 ? a : gcd(b, a%b);}
}