正整數 a 的「da(為 1 位整數)部分」定義為由 a 中所有 da 組成的新整數 pa 。例如:給定輸入格式:輸入在一行中依次給出 a、da 、b、db ,中間以空格分隔,其中 010 。a=3862767,da =6,則 a 的「6 部分」p a 是 66,因為 a 中有 2 個 6。
現給定 a、da 、b、db ,請編寫程式計算 pa +pb 。
輸出格式:
在一行中輸出 pa +pb 的值。
輸入樣例 1:
3862767
613530293
3
輸出樣例 1:
399
輸入樣例 2:
3862767
113530293
8
輸出樣例 2:
0
**部分
#include
#include
int main()
while(b
!=0)for
(int i=
0;i) sum1=sum1+a*
pow(
10,i)
;for
(int j=
0;j) sum2=sum2+b*
pow(
10,j)
;printf
("%d"
,sum1+sum2)
;return0;
}
執行結果
個人體會
思路比較簡單,先遍歷數中各個位上有幾個目標數,然後在組合成新數累加。
我的**中呼叫pow函式,用於求次方,方便運算在某一位上。
pow(a,b)表示ab,需加入標頭檔案math.h。
pat 乙級 1016 部分A B(C )
正整數 a 的 d a 為 1 位整數 部分 定義為由 a 中所有 d a組成的新整數 p a。例如 給定 a 3862767,da 6,則 a 的 6 部分 p a是 66,因為 a 中有 2 個 6。現給定 a d a b db,請編寫程式計算 p a p b 輸入在一行中依次給出 a dab ...
PAT 乙級1016 部分A B(C語言)
1016 部分a b 15分 正整數 a 的 d a 為 1 位整數 部分 定義為由 a 中所有 da組成的新整數 pa。例如 給定 a 3862767,da 6,則 a 的 6 部分 pa是 66,因為 a 有 2 個 6。現給定 a da b db,請編寫程式計算 pa pb。輸入格式 輸入在一...
PAT乙級1016 部分A B(C語言)
1016 部分a b 15 分 正整數 a 的 da 為 1 位整數 部分 定義為由 a 中所有 d a組成的新整數 p a 例如 給定 a 3862767,d a 6,則 a 的 6 部分 pa是 66,因為 a 中有 2 個 6。現給定 a d a b d b 請編寫程式計算 pa pb。輸入格...