论如何让你心甘情愿的点进帖子里
  • 板块灌水区
  • 楼主dong0717
  • 当前回复4
  • 已保存回复4
  • 发布时间2024/11/9 20:36
  • 上次更新2024/11/9 20:50:06
查看原帖
论如何让你心甘情愿的点进帖子里
1115541
dong0717楼主2024/11/9 20:36

题目连接
我的代码如下:

#include<bits/stdc++.h>
using namespace std;
struct date{
    long long a,b,j;
}c[1005];
bool cmp(date x,date y){
    return x.j<y.j;
}
int ans[4005]={1},ans1[4005],ans3[4005];
int main(){
    int n;
    scanf("%d",&n);
    for(int i=0;i<=n;i++){
        scanf("%lld%lld",&c[i].a,&c[i].b);
        c[i].j=c[i].a*c[i].b;
    }
    sort(c+1,c+n+1,cmp);
    for(int i=0;i<=n;i++){
        int len=4003;
        memset(ans1,0,sizeof(ans1));
        if(i!=0){
            long long t=0;
            long long cnt=0;
            for(int j=len;j>=0;j--){
                t=t*10+ans[j];
                ans1[j]=t/c[i].b;
                t%=c[i].b;
                cnt=cnt*10+ans1[j];
            }
            //以上是高精除低精
            int flag=0;
            for(int j=len;j>=0;j--){
				if(ans1[j]<ans3[j]) break;
				if(ans1[j]>ans3[j]){
					flag=1;
					break;
				}
			}
            //以上为比大小
			if(flag)
				for(int j=len;j>=0;j--) 
                    ans3[j]=ans1[j];
        }
        for(int j=len;j>=0;j--){
            ans[j]*=c[i].a;      
            ans[j+1]+=ans[j]/10;
            ans[j]%=10;
        }
        //高精度乘法
    }
    int len=4003;
    while(ans3[len]==0&&len>=1) 
        len--;
    //去前导零
    for(int j=len;j>=0;j--) 
        printf("%d",ans3[j]);
    return 0;
}
//WA on #5 #7~9

我把#5下了下来,输出出了这个东西……

816982-159986-2026237-504096-1487992160663786568520638211765782-611122942222-39614-2324802-1725931693252-3214022446193-700590130902440809235916712234238992644052222363249-178735-2370769104125989052-454501-184207868269721301391165785-6288851691261-614376-693867-16415632101538-2430303-748163-1435936-982196-21064271207380-360406250614-37174-2102775599335-1401936130734-2729512860681785165160382-17089531335530-182983921028161807454323190-847842970840-146738318087382466077-11925511408267175980024349494625084966543513104981112643678160919540

求大佬帮忙解答

2024/11/9 20:36
加载中...