hdu 1002 A+B Problem II
1384 단어 System
제목의 대의: 두 개의 가수를 문자열로 표시하고 위치에 따라 더하면 10진 1이 된다.
코드는 다음과 같습니다.
#include<iostream>
#include<cstdio>
#include<cstring>
#include<stdlib.h>
using namespace std;
int n;
char s1[1100],s2[1100];
int len1,len2;
int main(void)
{
int i,j,k,p;
int flag;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
int a[1100]={0};
flag=0;
printf("Case %d:
",i);
scanf("%s%s",s1,s2);
len1=strlen(s1);
len2=strlen(s2);
j=len1-1;
k=len2-1;
p=0;
printf("%s + %s = ",s1,s2);
while(j>=0&&k>=0)
{
if(a[p]+(s1[j]-'0')+(s2[k]-'0')>=10)// ,
{
a[p]=a[p]+(s1[j]-'0')+(s2[k]-'0')-10;
a[p+1]++;
}
else
a[p]=a[p]+(s1[j]-'0')+(s2[k]-'0');
p++;
j--;
k--;
}
if(j>=0)
{
for(int t=j;t>=0;t--)
{
a[p]=a[p]+(s1[t]-'0');
p++;
}
}
else if(k>=0)
{
for(int t=k;t>=0;t--)
{
a[p]=a[p]+(s2[t]-'0');
p++;
}
}
else if(a[p]!=0)// 10
p++;
for(int t=p-1;t>=0;t--)
{
if(a[t]==0&&flag==0)
continue;
else
{
flag=1;
printf("%d",a[t]);
}
}
printf("
");
if(i!=n)
printf("
");
}
system("Pause");
return 0;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Bring application to foreground with a keypressFrom Forum Nokia Wiki Inorder to capture the keys while you application under background you've to override CCoeAppUi::H...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.