码迷,mamicode.com
首页 > 其他好文 > 详细

问题 H: 部分A+B (15)

时间:2017-11-11 13:10:34      阅读:145      评论:0      收藏:0      [点我收藏+]

标签:problem   return   空格   printf   mit   超时   submit   title   正整数   

问题 H: 部分A+B (15)

时间限制: 1 Sec  内存限制: 32 MB
献花: 86  解决: 81
[献花][花圈][TK题库]

题目描述

正整数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的值。

样例输入

3862767 6 13530293 3
3862767 1 13530293 8

样例输出

399
0
参考代码:

#include<stdio.h>


#include<cmath>


int main(){


    int a,c,b,d;


    int ret1=0,ret2=0;


    int cnt=0,n=0;


    scanf("%d %d %d %d",&a,&c,&b,&d);


    while(a!=0){


        if(a%10==c){


            cnt++;


            ret1+=pow(10,cnt-1)*c;


        }


        a=a/10;


    }


    while(b!=0){


        if(b%10==d){


            n++;


            ret2+=pow(10,n-1)*d;


        }


        b=b/10;


    }


    printf("%d\n",ret1+ret2);


    return 0;


}

取出每一位数后直接处理,不要保存到数组再遍历,这样会超时因为最大值为10^10

 

问题 H: 部分A+B (15)

标签:problem   return   空格   printf   mit   超时   submit   title   正整数   

原文地址:http://www.cnblogs.com/zhhjthing/p/7818526.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!