程序地带

1016 部分A+B (15分)


1016 部分A+B (15分)

正整数 A 的“D ​A ​​ (为 1 位整数)部分”定义为由 A 中所有 D ​A ​​ 组成的新整数 P ​A ​​ 。例如:给定 A=3862767,D ​A ​​ =6,则 A 的“6 部分”P ​A ​​ 是 66,因为 A 中有 2 个 6。


现给定 A、D ​A ​​ 、B、D ​B ​​ ,请编写程序计算 P ​A ​​ +P ​B ​​ 。


输入格式: 输入在一行中依次给出 A、D ​A ​​ 、B、D ​B ​​ ,中间以空格分隔,其中 0<A,B<10 ​10 ​​ 。


输出格式: 在一行中输出 P ​A ​​ +P ​B ​​ 的值。


输入样例 1: 3862767 6 13530293 3 输出样例 1: 399 输入样例 2: 3862767 1 13530293 8 输出样例 2: 0


先剖析一下题意: 直接看样例 3862767 和 6 , 13530293 和 3; 意思就是看看 6 在这一大串数字里出现几回,出现一回就是6,出现2回就是66,3回就是666;这里是66; 同理,3在13530293中出现3回,那就是333; 然后再把66和333加起来就行了,也就是输出样例!


代码如下


#include<stdio.h>
#include<string.h>//感觉将数字换成字符串和字符会比较容易些
int main()
{
int count1=0,count2=0,s1,s2,i;//count用来计算出现的次数
char A[10000],B[10000],a,b;//2个比较大的数组存放字符串
scanf("%s %c %s %c",&A,&a,&B,&b);
s1=strlen(A);
s2=strlen(B);//计算字符串长度
for(i=0;i<s1;i++)
{
if(A[i]==a)
count1++;
}
for(i=0;i<s2;i++)
{
if(B[i]==b)
count2++;
}
int c,d,c1,d1;//c和d用来计算最后的相加
c1=c=a-'0';//将字符转换为数字,方便下面计算
d1=d=b-'0';
if(count1==0)//考虑出现次数为0的情况,直接把值赋为0;
{
c=0;
}
if(count2==0)
{
d=0;
}
for(i=1;i<=count1-1;i++)
{
c=c*10+c1;//利用循环将‘6’转化成‘66’
}
for(i=1;i<=count2-1;i++)
{
d=d*10+d1;//利用循环将‘3’转化成‘333’
}
printf("%d",c+d);
}

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_52557422/article/details/112689426

随机推荐

统计源期刊目录_统计源期刊是什么意思

统计源期刊是什么意思?统计源期刊全称中国科技论文统计源期刊,也就是我们常说的科技核心期刊,科技核心期刊是我国核心期刊体系中的一类,在国内个人评职...

weixin_39956022 阅读(339)

面试总结02(Linux系统持续更新)

面试总结02(Linux系统)一.引子毕竟我们搞运维的,对linux系统要有一定的了解,笔者常用的系统是linux的centos6和centos...

hlqlinux 阅读(540)

每日水题 11-21

文章目录SuperJumping!Jumping!Jumping!B-numberOulipoNetworking最大异或和SuperJumping!Jumping!Jumping!SuperJump...

xxb3.1415 阅读(834)

四元数和旋转_四元数与旋转

四元数和旋转_四元数与旋转

定义1四元数(Quaternion)四元数是形如的表达式,其中均为实数,而满足如下运算规则定义2共轭(Conjugate)对于,称为其共轭.定义3模长结论4①...

罗博宇 阅读(380)

python装饰器之讲

装饰器:装饰器本质上是一个Python函数,它可以在让其他函数在不需要做任何代码的变动的前提下增加额外的功能。装饰器的返回值也是一个函数的对象。这里写一个简单的统计双层fo...

二师兄写代码 阅读(568)