時間限制:1s 記憶體限制:32mb輸入乙個日期,要求輸出該日期為星期幾
9 october 2001
14 october 2001
tuesday
sunday
1、日期類問題,先預處理出每個日期與原點日期(0年1月1日)之間的天數間隔,存入buf三維陣列。
2、看到題目考慮兩個問題:
①今天星期幾?
②今天和給定日期相隔幾天
3、int days = buf[y][m][d] - buf[2019][2][21]; //可能為負數
days += 4;
算出來的天數差可能是個負數,今天是星期四,對應陣列下標為4,經此計算得到經過days天後的下標
#include #include #define isyear(x) x%100 != 0 && x%4 == 0 || x%400 == 0 ? 1 : 0
int dayofmonth[13][2] = ;
struct date}}
};int buf[3001][13][32]; //預處理,儲存每一天與原點日期的天數差
char monthname[13][20] = ; // 月名 每個月對應下標1-12
char weekname[7][20]=; //周名 每個周對應下標0-6
int main()// 預處理出每一天與原點日期的天數差
int d, m, y;
char s[20];
while(scanf("%d%s%d", &d, s, &y) != eof)
}int days = buf[y][m][d] - buf[2019][2][21]; //可能為負數
days += 4; // 2019/2/21今天為星期四,對應下標為4,得到目標日期的下標
王道機試指南 P1
p1 結構體陣列排序 核心在於1.使用結構體,2,使用sort和對應的cmp 3.字串使用strcmp比大小 先建立乙個結構體用來存對應的數值 struct estu 100 bool cmp e a,e b intmain return0 p1 這道題的關鍵是在於,因為給定的值是乙個範圍的,所以可...
菜鳥的機試準備 王道機試指南 演算法筆記
字串雜湊 100000582 b 100000582 c 100000582 d 今天第幾天?清華 include include using namespace std int month tab 2 13 bool is leapyear int year intmain else 上邊的if ...
王道機試指南NO 5Sort Hash應用
時間限制 1s 記憶體限制 128mb給n個整數,請按從大到小的順序輸出其中前m大的數。每組測試資料有兩行,第一行有兩個數n,m 0 n,m 1000000 第二行包含n個各不相同,且都處於區間 500000,500000 的整數。對每組測試資料按從大到小的順序輸出前m大的數。5 33 35 92 ...