#24577: 可以先手算排陣列順序!(不想寫那麼多邏輯的可以參考喔)


andrew99154 (YuCheng)

學校 : 均一國際教育實驗高級中學
編號 : 145338
來源 : [111.254.45.176]
最後登入時間 :
2024-01-03 20:33:30
c638. 天干地支 -- it's david | From: [1.163.199.113] | 發表日期 : 2021-03-06 13:58

從題目範例得知1906年為丙午年,直接往前推到1800年

-106分別除10與12再取餘數,把陣列倒著數,可以得知1800年為庚申年。

直接在宣告陣列時把順序排好,輸入n之後直接減1800再取餘數即可拗!

 

下面有雷,不會再看

----------------------------------------------------------------------------

 

 

 

 

 

 

 

 

 

#include<iostream>

using namespace std;

int main(){

int n;

        string array[] = {"庚","辛","壬","癸","甲","乙","丙","丁","戊","己"};

 

        string array2[] = {"申","酉","戌","亥","子","丑","寅","卯","辰","巳","午","未"};

while(cin>>n){

 

n-=1800;

cout<<array[n%10]<<array2[n%12]<<endl;

}

}

 

 
ZeroJudge Forum