PAT Basic 1016. 部分A+B (15)(C语言实现)
2017-05-18 23:45
603 查看
题目
正整数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 < 1010。
输出格式:
在一行中输出PA + PB的值。
输入样例1:
3862767 6 13530293 3
输出样例1:
399
输入样例2:
3862767 1 13530293 8
输出样例2:
0
思路
2^31 < 2*10^10,因此要用long int。
代码
最新代码@github,欢迎交流 ^_^#include <stdio.h> long Dpart(long A, int D_A) { long P_A; for(P_A = 0; A; A /= 10) if(A % 10 == D_A) P_A = P_A * 10 + D_A; return P_A; } int main() { long A, B; int D_A, D_B; scanf("%ld %d %ld %d", &A, &D_A, &B, &D_B); printf("%ld", Dpart(A, D_A) + Dpart(B, D_B)); return 0; }
相关文章推荐
- PAT乙级 1016. 部分A+B (15) C语言实现
- PAT Basic 1026. 程序运行时间(15)(C语言实现)
- PAT (Basic Level) Practise (中文)- 1016. 部分A+B (15)
- 【C++】浙大PAT (Basic Level)1016. 部分A+B (15)
- PAT Basic 1061. 判断题(15)(C语言实现)
- PAT (Basic Level) Practise (中文)1016. 部分A+B (15)
- PAT Basic Level 1016. 部分A+B (15)
- 浙江大学PAT乙级试题.1016. 部分A+B (15)C语言
- PAT 1016. 部分A+B (15)(C语言)
- PAT BASIC LEVEL 1016. 部分A+B (15)
- PAT(basic level) 1016 部分A+B(15)
- PATBasic——1016. 部分A+B (15)
- PAT Basic 1011. A+B和C (15)(C语言实现)
- PAT Basic 1046. 划拳(15)(C语言实现)
- PAT Basic 1051. 复数乘法 (15)(C语言实现)
- PAT Basic 1031. 查验身份证(15)(C语言实现)
- PAT (Basic Level) Practise (中文) 1016. 部分A+B (15)
- PAT (Basic Level) Practise (中文) 1016. 部分A+B (15)
- PAT (Basic Level) Practise (中文)1016. 部分A+B (15)
- PAT Basic 1041. 考试座位号(15)(C语言实现)