PAT 1048 數字加密

2021-08-18 18:57:20 字數 891 閱讀 7814

本題要求實現一種數字加密方法。首先固定乙個加密用正整數a,對任一正整數b,將其每1位數字與a的對應位置上的數字進行以下運算:對奇數字,對應位的數字相加後對13取餘——這裡用j代表10、q代表11、k代表12;對偶數字,用b的數字減去a的數字,若結果為負數,則再加10。這裡令個位為第1位。

輸入格式:

輸入在一行中依次給出a和b,均為不超過100位的正整數,其間以空格分隔。

輸出格式:

在一行中輸出加密後的結果。

輸入樣例:

1234567 368782971
輸出樣例:
3695q8118

不知道有沒有朋友遇到我掉的這個坑,它的判斷奇偶數的下表是從右邊開始的,我從左邊數一直有大約一半的測試點通不過,原來是奇數測試資料時是對的偶數個時候就不對了||--||成功避開b串短於a串和a串短於b串的坑,沒想到陷入了這個清奇的大坑。

#include #include #include using namespace std;

void trans(char *s,int n,int a,int b,bool f)

else

int i=0;

int result[102];

while(i=13)

} else

} i++;

} for(int i=0;i=0&&result[i]<=9)

else if(result[i]==10)

else if(result[i]==11)

else if(result[i]==12)

} return 0;

}

PAT 1048數字加密

include include include include using namespace std int main min alen for int i 0 i min i elseelse reverse b.begin b.end cout 有乙個坑就是,如果b比a短,需要補齊,在網上搜了...

PAT 1048 數字加密

題目連線 思路 首先,題目給出a與b均為不超過100位的,而int型顯然不夠這麼多位,肯定採用大數方法,即採用字串輸入,通過int型陣列倒序儲存。例如 輸入 1234567 這用string輸入每乙個均為char型,然後申請int型陣列倒序 即變為7654321 這裡的每一位是int型 可直接進行加...

PAT 1048 數字加密

本題要求實現一種數字加密方法。首先固定乙個加密用正整數a,對任一正整數b,將其每1位數字與a的對應位置上的數字進行以下運算 對奇數字,對應位的數字相加後對13取餘 這裡用j代表10 q代表11 k代表12 對偶數字,用b的數字減去a的數字,若結果為負數,則再加10。這裡令個位為第1位。輸入格式 輸入...