我是靠谱客的博主 冷傲小兔子,最近开发中收集的这篇文章主要介绍【PAT乙级】1016 部分A+B一、题目二、我的AC代码,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

目录

  • 一、题目
  • 二、我的AC代码


一、题目

1016 部分A+B (15分)

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

  现给定 A A A D A D_{A} DA B B B D B D_{B} DB ,请编写程序计算 P A + P B P_{A}+P_{B} PA+PB

输入格式:
输入在一行中依次给出 A A A D A D_{A} DA B B B D B D_{B} DB ,中间以空格分隔,其中 0 < A 0 lt A 0<A B < 1 0 9 B lt 10^{9} B<109

输出格式:
在一行中输出 P A P_{A} PA + + + P B P_{B} PB 的值。

输入样例 1:

3862767 6 13530293 3

输出样例 1:

399

输入样例 2:

3862767 1 13530293 8

输出样例 2:

0

代码长度限制
16 KB
时间限制
150 ms
内存限制
64 MB


二、我的AC代码

#include <stdio.h>
long P(long n, int Dn);
//自定义函数,计算出新整数P。
int main(void)
{
long A, B;
//原整数。
int DA, DB;
//目标数字。
scanf("%ld %d %ld %d", &A, &DA, &B, &DB);
long PA, PB;
//新整数。
PA = P(A, DA);
PB = P(B, DB);
printf("%ldn", PA+PB);
//输出两个新整数PA和PB的和。
return 0;
}
/* 由n中所有的Dn组成的新整数Pn */
long P(long n, int Dn)
{
long Pn=0;
while(n){
if( n%10 == Dn ){
Pn = Pn * 10 + Dn;
}
n /= 10;
}
return Pn;
}


最后

以上就是冷傲小兔子为你收集整理的【PAT乙级】1016 部分A+B一、题目二、我的AC代码的全部内容,希望文章能够帮你解决【PAT乙级】1016 部分A+B一、题目二、我的AC代码所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(50)

评论列表共有 0 条评论

立即
投稿
返回
顶部