a263. 日期差幾天 5/16/2025

解法一、?????

神經病寫法

✅ 完整代碼

評分結果(參考) : AC (13ms, 328KB)

#include <bits/stdc++.h>
using namespace std;

int main(){
    ios::sync_with_stdio(false);
    cin.tie(nullptr);

    int y1, m1, d1, y2, m2, d2;
    while(cin >>y1>>m1>>d1 >>y2>>m2>>d2){
        int k = 0;
        for(int i=(y1>y2 ? y2 : y1); i<(y1>y2 ? y1 : y2); i++)
            k += (((i%4==0 && i%100!=0) || i%400==0) ? 1 : 0);
    
        cout <<
            ((y1>y2 || (y1==y2 && m1>m2) || (y1==y2 && m1==m2 && d1>d2))
            ? ((y1-y2)*365 + k
            + ((m1-1)*30 + (m1/2) + ((m1==9 || m1==11) ? 1 : 0)
            + ((m1>2) ? (((y1%4==0 && y1%100!=0) || y1%400==0) ? -1 : -2) : 0) + d1)
            - ((m2-1)*30 + (m2/2) + ((m2==9 || m2==11) ? 1 : 0)
            + ((m2>2) ? (((y2%4==0 && y2%100!=0) || y2%400==0) ? -1 : -2) : 0) + d2)) 
            : ((y2-y1)*365 + k
            - ((m1-1)*30 + (m1/2) + ((m1==9 || m1==11) ? 1 : 0)
            + ((m1>2) ? (((y1%4==0 && y1%100!=0) || y1%400==0) ? -1 : -2) : 0) + d1)
            + ((m2-1)*30 + (m2/2) + ((m2==9 || m2==11) ? 1 : 0)
            + ((m2>2) ? (((y2%4==0 && y2%100!=0) || y2%400==0) ? -1 : -2) : 0) + d2))) 
            << "\n";
    }

    return 0;
}