本題要求計算 a/b,其中 a 是不超過 1000 位的正整數,b 是 1 位正整數。你需要輸出商數 q 和餘數 r,使得 a=b×q+r 成立。
輸入格式:
輸入在一行中依次給出 a 和 b,中間以 1 空格分隔。
輸出格式:
在一行中依次輸出 q 和 r,中間以 1 空格分隔。
輸入樣例:
123456789050987654321 7
輸出樣例:
17636684150141093474 3
顯然直接用乘除是不行的,因為最大有1000位,沒有那麼大的型別,所以這道題考察我們關於用字串處理除法的豎式運算,也就是從最高位開始去除給出的除數,除不盡多加一位,最後除不盡的作為餘數。
#include
#include
#include
using
namespace std;
intmain()
r=(a[0]
-'0'
)%b;
//r用於存每一步的餘數
for(i=
1;ilength()
;i++)
cout<<
" "<}
PAT乙級1017 A除以B
時間限制 100 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 chen,yue 本題要求計算a b,其中a是不超過1000位的正整數,b是1位正整數。你需要輸出商數q和餘數r,使得a b q r成立。輸入格式 輸入在1行中依次給出a和b,中間以1空格...
PAT乙級1017A除以B
題目如下 本題要求計算 a b,其中 a 是不超過 1000 位的正整數,b 是 1 位正整數。你需要輸出商數 q 和餘數 r,使得 a b q r 成立。輸入格式 輸入在一行中依次給出 a 和 b,中間以 1 空格分隔。輸出格式 在一行中依次輸出 q 和 r,中間以 1 空格分隔。輸入樣例 123...
PAT 乙級 1017 A除以B
本題要求計算 a b,其中 a 是不超過 1000 位的正整數,b 是 1 位正整數。你需要輸出商數 q 和餘數 r,使得 a b q r 成立。輸入在一行中依次給出 a 和 b,中間以 1 空格分隔。在一行中依次輸出 q 和 r,中間以 1 空格分隔。123456789050987654321 7...