一直很害怕這類題目,而且這類題目還算是送分的題目、、、、
寫完這題,發現自己的邏輯思維能力確實太差,wa 二十幾發,後來發現是 乙個小錯誤、、 - -b
記得有幾次比賽出現求日期的題,我都是直接放棄的,這次強壓著自己、、、
問題描述
已知2023年11月11日是星期五,問yyyy年mm月dd日是星期幾?注意考慮閏年的情況。尤其是逢百年不閏,逢400年閏的情況。
輸入格式
輸入只有一行
yyyy mm dd
輸出格式
輸出只有一行 w
資料規模和約定
1599 <= yyyy <= 2999
1 <= mm <= 12
1 <= dd <= 31,且確保測試樣例中yyyy年mm月dd日是乙個合理日期
1 <= w <= 7,分別代表周一到週日
樣例輸入
2011 11 11
樣例輸出 5
我想說 又被我寫的非常的複雜、、、、其實就是簡單的模擬、、、
#include #include #include #include #include using namespace std;
#define n 3010
bool tt[n];
int sg[13] = ;
void judge()
}int main()
if(mm >= 3 && tt[yy])
ans ++;
for(int i = 1; i <= mm - 1; i ++)
ans += dd;
int tmp_1 = ((ans) % 7 + 5)%7;
if(tmp_1 != 0)
else
printf("7\n");
continue;
}else if(yy == 2011)
ans += 11;
ans -= dd;
}else if(mm > 11)
else
ans += dd - 11;
int tmp_1 = (ans + 12) % 7;
if(tmp_1 != 0)
else
printf("7\n");
continue;
}else
int tmp_2 = 0;
for(int i = 1; i <= mm - 1; i ++)
if(mm >= 3 && tt[yy])
tmp_2 ++;
tmp_2 += dd;
ans += (365 - tmp_2);
if(tt[yy])
ans ++;
for(int i = 1; i < 11; i ++)
ans += 11;
int tmp_1 = abs(ans % 7 - 5)%7 ; // 死在這裡、、、、一開始 寫的是 (ans + 5)%7;
if(tmp_1 != 0)
else
printf("7\n");
continue;}}
}/****
2011 11 15
2011 11 20
2011 12 30
2010 11 12
1599 1 1
1599 3 1
2015 2 24
2037 3 30
1980 2 29
1980 3 21
****/
雜七雜八日常錯誤記錄
在此目錄下建立資料夾 cd opt cloudera manager cm 5.7.0 run mkdir cloudera scm agent 賦權 chown cloudera scm cloudera scm cloudera scm agent 提示classnotexception異常,原...
SQL學習(八)日期處理
不同資料庫中,針對日期處理的函式不同 oracle中常用日期函式 1 sysdate 獲取當前系統時間 如 select sysdate 返回當前時間,包括年月日 時分秒 2 to date 字元型別 日期型別 將字串型別轉換日期型別 如 select from ticket where creat...
UML雜七雜八
各種分析的角度 目的。1 用例分析,是整個系統層次的功能 使用者的分析 2 靜態分析是對系統實現過程中對類層次的分析,它關注各個實現類的基本性情及各個類之前的關係 關聯 組合 聚合 泛化。3 活動分析是對系統功能業務及業務流和的分析,它是對物件層次的分析。這裡面引入了事件 時候的因素了 4 元件分析...