正整數 a 的「da(為 1 位整數)部分」定義為由 a 中所有 da 組成的新整數 pa。例如:給定 a=3862767,da=6,則 a 的「6 部分」pa 是 66,因為 a 中有 2 個 6。輸入格式:現給定 a、da、b、db,請編寫程式計算 pa+pb。
輸入在一行中依次給出 a、da、b、db,中間以空格分隔,其中 0輸出格式:輸入樣例 1:在一行中輸出 pa+pb 的值。
3862767 6 13530293 3輸出樣例 1: 輸入樣例 2:
3862767 1 13530293 8輸出樣例 2: 注意
strlen(str)
的返回值為unsigned
型別的,可以使用(int)
進行強制轉換;
雜湊表(雜湊表)是乙個計數(標記)的好辦法;
long long
型別需要使用%lld
。
#include #include char numa[10];
char numb[10];
int main()
for (int i=0; i < (int)strlen(b); i++)
int pa = 0, pb = 0;
while (numa[da]--)
while (numb[db]--)
printf("%d", pa + pb);
return 0;
}
#include int main()
a /= 10;
}while (b > 0)
b /= 10;
}printf("%d", pa + pb);
return 0;
}
PAT B1016 部分A B (簡單模擬)
note 除 中的讓k1 10外,還可通過 10的方法列舉a b的每一位 while a 0 正整數 a 的 da 為 1 位整數 部分 定義為由 a 中所有 d a組成的新整數 p a 例如 給定 a 3862767,d a 6,則 a 的 6 部分 p a 是 66,因為 a 中有 2 個 6。...
PAT 乙級 1016 部分A B
正整數a的 da 為1位整數 部分 定義為由a中所有da組成的新整數pa。例如 給定a 3862767,da 6,則a的 6部分 pa是66,因為a中有2個6。現給定a da b db,請編寫程式計算pa pb。輸入格式 輸入在一行中依次給出a da b db,中間以空格分隔,其中0 a,b 101...
PAT 乙級 1016 部分A B
正整數a的 da 為1位整數 部分 定義為由a中所有da組成的新整數pa。例如 給定a 3862767,da 6,則a的 6部分 pa是66,因為a中有2個6。現給定a da b db,請編寫程式計算pa pb。輸入格式 輸入在一行中依次給出a da b db,中間以空格分隔,其中0 a,b 10 ...