码迷,mamicode.com
首页 > 编程语言 > 详细

- 【数组模拟】

时间:2018-09-08 19:24:11      阅读:147      评论:0      收藏:0      [点我收藏+]

标签:amp   names   std   ==   for   using   color   strcpy   can   

板子

#include<stdio.h>
#include<string.h>
using namespace std;
char sa[10001],sb[10001],t[10001];
int a[10001],b[10001],c[10001];

int main()
{
    scanf("%s%s",sa,sb);
    if(strlen(sa)<strlen(sb) || (strlen(sa)==strlen(sb) && strcmp(sa,sb)<0) )
    {
        strcpy(t,sa); //t=sa
        strcpy(sa,sb);//sa=sb
        strcpy(sb,t); //sb=t
        printf("-");
    }
    int la=strlen(sa);
    int lb=strlen(sb);
    for(int i=0;i<la;++i) a[la-i]=sa[i]-0;
    for(int i=0;i<lb;++i) b[lb-i]=sb[i]-0;
    
    int lc=1;
    while(lc<=la || lc<=lb) 
    {
        if(a[lc]<b[lc]) {
            a[lc]+=10;
            a[lc+1]--;
        }
        c[lc]=a[lc]-b[lc];
        ++lc;
    }
    
    while( c[lc]==0 && lc>1 ) lc--;
    for(int i=lc;i>=1;--i) printf("%d",c[i]);
    return 0;
}

 

- 【数组模拟】

标签:amp   names   std   ==   for   using   color   strcpy   can   

原文地址:https://www.cnblogs.com/qseer/p/9610077.html

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