标签:
这道题我wa了4次!!!RE了一次,直到看到了RE我才看到了希望,果然,把数组开大一点就过了,小白
在uva上的题好像叙述都不太精确,从来都不说数据最长多少,以至于只能瞎开数组,白白RE了一次,wa的原因是因
为数据类型错了,应该开long long的,我竟然忘了商也可以是大数的,,,唉,还是不够细心,不够认真啊。
贴代码:
#include<stdio.h> #include<stdlib.h> #include<string.h> #define ll long long char a[3000]; char b[2]; ll mul[3000]; int main() { ll sum,n,mod; int i,j,s,flag,flag1; while(scanf("%s%s%lld",a,b,&n)!=EOF) { s=flag=0; sum=0; int len= strlen(a); for(i=0; i<len; i++) { while(sum<n) { if(i>=len) { flag=1; break; } sum=sum*10+a[i]-'0'; if(sum<n) mul[i]=0; i++; } i--; if(flag) { mod=sum; break; } else { mod=sum%n; mul[i]=sum/n; sum=mod; } } if(b[0]=='/') { flag1=0; for(i=0;i<len;i++) { if(flag1==0&&mul[i]==0) continue; printf("%d",mul[i]); flag1=1; } if(flag1==0) printf("0"); printf("\n"); } else if(b[0]=='%') printf("%lld\n",mod); } return 0; }今天六一儿童节,给a_jie买了好多好吃的,这个吃货,竟然在睡觉,每次看书都是看睡着,不知道好好学
习,一直都是令我头疼的难题!!!慢慢教育吧,我都不想再说了。。。
标签:
原文地址:http://blog.csdn.net/sinat_22659021/article/details/46318457