다음과 같은 정보가 제공되지만 직접 조사해 보는 것이 좋습니다.프로젝트 오일러 # 19 (Java)
1 Jan 1900 was a Monday.
Thirty days has September,
April, June and November.
All the rest have thirty-one,
Saving February alone,
Which has twenty-eight, rain or shine.
And on leap years, twenty-nine.
A leap year occurs on any year evenly divisible by 4, but not on a century unless it is divisible by 400.
20 세기 (1901 년 1 월 1 일부터 2000 년 12 월 31 일)까지 매월 1 일에 몇 일요일이 감소 했습니까?
솔루션 : 171 일이있는 반면
내 다음과 같은 논리가, 나에게 173 일을 제공합니다! 여분의 2 일간의 출국자는 어디입니까?
public static void main(String args[]) {
Date startDate = new Date(1901, Calendar.JANUARY, 01);
Date endDate = new Date(2000, Calendar.DECEMBER, 31);
checkSundays(startDate, endDate);
}
private static void checkSundays(Date start, Date end) {
int dayNum;
Calendar startDate = Calendar.getInstance();
startDate.setTime(start);
System.out.println(startDate.getTime());
Calendar endDate = Calendar.getInstance();
endDate.setTime(end);
System.out.println(endDate.getTime());
int count = 0;
while (startDate.before(endDate)) {
for (int i = 1; i < 13; i++) {
dayNum = startDate.get(Calendar.DAY_OF_WEEK);
if (dayNum == 1) {
count++;
}
System.out.println(startDate.getTime());
startDate.add(Calendar.MONTH, 1);
}
System.out.println("Count " + count);
}
}
'Date'생성자가 사용되지 않습니다. – trashgod