兩種方法
#include<bits/stdc++.h>
using namespace std;int main(){int year;cin>>year;string tg[10] = {"geng", "xin", "ren", "gui","jia", "yi", "bing", "ding", "wu", "ji" };string dz[12] = {"shen", "you", "xu", "hai","zi", "chou", "yin", "mao", "chen", "si", "wu", "wei" };int yushu=(year)%60;int i=yushu%10;int j=yushu%12;cout<<tg[i]<<dz[j];return 0;}
這種是數組偏移,其實兩種做法的核心都是將2044年%60后的到的數4偏移成0,即將jiazi年與4對應上。
第二種就是將年份加上56(60-4)得到,兩種的結果都是一樣的,但是我不知道為什么year-4有一個答案是錯的,洛谷給不出測試用例就比較難改。
偏移值還是不錯的,在循環隊列中也用到了加偏移值%隊列長度