题目描述:spa
正整数 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^10 。 输出格式: 在一行中输出 PA +PB 的值。 输入样例 1: 3862767 6 13530293 3 输出样例 1: 399 输入样例 2: 3862767 1 13530293 8 输出样例 2: 0
本人AC代码:blog
// 1016 部分A+B (15 分) # include <stdio.h> int main(void) { char A[11], B[11]; int D_A, D_B, Sum; int N_A=0, N_B=0; // 构造新的 Pa Pb int L_A=0, L_B=0; // A B 的长度 int i=0; scanf("%s",A); scanf("%d",&D_A); scanf("%s",B); scanf("%d",&D_B); while(A[i] != '\0') { if ((A[i]-'0') == D_A) { L_A++; } i++; } i=0; while(B[i] != '\0') { if ((B[i]-'0') == D_B) { L_B++; } i++; } // 计算 D_A D_B for (i=0; i<L_A; i++) { N_A = (N_A*10+D_A); } for (i=0; i<L_B; i++) { N_B = (N_B*10+D_B); } Sum = N_A + N_B; printf("%d",Sum); return 0; }
RRRio