PAT:B1016. 部分A+B (15)
来源:互联网 发布:淘宝商品无缘无故下架 编辑:程序博客网 时间:2024/06/06 09:39
**PAT:B1016. 部分A+B (15)**
正整数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
思路:
先写一个方法:
能够输入A和D的时候,能返回P的值。
在main方法中写入数据,得到两个P的值
代码:
int add(int A,int D){ int P = 0; int num; //余数 int t = 0; //t复数相同的数字 while(A > 0) { num = A % 10; if(num == D) t++; A = A / 10; } for(; t > 0; t--) { P = P*10 + D; } return P;}
这个算法时间复杂度是:A + t
总算法:
#include<stdio.h>int add(int A,int D){ int P = 0; int num; //余数 int t = 0; //t复数相同的数字 while(A > 0) { num = A % 10; if(num == D) t++; A = A / 10; } for(; t > 0; t--) { P = P*10 + D; } return P;}int main(){ int A,D1; int B,D2; int P1,P2; scanf("%d%d%d%d", &A, &D1, &B, &D2); P1 = add(A,D1); P2 = add(B,D2); printf("%d\n", P1+P2); return 0;}
阅读全文
0 0
- PAT B1016. 部分A+B (15)
- PAT:B1016. 部分A+B (15)
- PAT B1016 部分A+B
- PAT B1016: 部分A+B
- PAT乙级练习题B1016.部分A+B
- PAT —–B1016 部分A + B
- B1016. 部分A+B (15)
- B1016. 部分A+B (15')
- 部分A+B(B1016)
- B1016.部分A+B
- 3.1入门模拟B1016.部分A+B
- PAT(B)1016. 部分A+B (15)
- PAT-B:1016. 部分A+B (15)
- PAT-B 1016. 部分A+B (15)
- PAT-B 1016. 部分A+B (15)
- PAT-部分A+B
- PAT 1016. 部分A+B (15)
- PAT乙级 部分A+B (15)
- TextView常用属性
- DES字符串加密
- 数据结构 顺序栈进行进制转换
- 2669 2-2 Time类的定义
- telnet
- PAT:B1016. 部分A+B (15)
- update语句起别名写法
- python批量修改文件名
- C语言学习历程(二)自定义数据类型与其本质
- 机器学习正式更新-NG到西瓜书
- IJKPlayer简单实用流程
- 学习了一位前辈写的大数加法实例,由于我是菜鸟一枚,自己修改了备注也更全面一些,大神勿喷
- Android ijkplayer的使用解析
- LNMP分布式的安装