社区讨论

为什么只有十分啊啊啊!!

P1018[NOIP 2000 提高组] 乘积最大参与者 2已保存回复 2

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
2 条
当前快照
1 份
快照标识符
@lyjipkkq
此快照首次捕获于
2024/07/13 10:38
2 年前
此快照最后确认于
2024/07/13 12:11
2 年前
查看原帖
CPP
#include<bits/stdc++.h>
using namespace std;
int main(){
    int k,n,shu,ji=0,i;
    int x,y,z,q,w,e,r;
    cin>>n>>k;
    cin>>shu;
    for(i=n-1;i>=0;i=i-1){
        if (k==1){
            x=shu/pow(10,i);
            y=shu-x*pow(10,i);
            if (x*y>ji){
                ji=x*y;
            }
        }
        if (k==2){
            x=shu/pow(10,i);
            y=(shu-x*pow(10,i))/pow(10,i-1);
            z=shu-x*pow(10,i)-y*pow(10,i-1);
            if (x*y*z>ji){
                ji=x*y*z;
            }
        }
        if (k==3){
            x=shu/pow(10,i);
            y=(shu-x*pow(10,i))/pow(10,i-1);
            z=(shu-x*pow(10,i)-y*pow(10,i-1))/pow(10,i-2);
            q=shu-x*pow(10,i)-y*pow(10,i-1)-z*pow(10,i-2);
            if (x*y*z>ji){
                ji=x*y*z*q;
            }
        }
        if (k==4){
            x=shu/pow(10,i);
            y=(shu-x*pow(10,i))/pow(10,i-1);
            z=(shu-x*pow(10,i)-y*pow(10,i-1))/pow(10,i-2);
            q=(shu-x*pow(10,i)-y*pow(10,i-1)-z*pow(10,i-2))/pow(10,i-3);
            w=shu-x*pow(10,i)-y*pow(10,i-1)-z*pow(10,i-2)-q*pow(10,i-3);
            if (x*y*z*w>ji){
                ji=x*y*z*q*w;
            }
        }
        if (k==5){
            x=shu/pow(10,i);
            y=(shu-x*pow(10,i))/pow(10,i-1);
            z=(shu-x*pow(10,i)-y*pow(10,i-1))/pow(10,i-2);
            q=(shu-x*pow(10,i)-y*pow(10,i-1)-z*pow(10,i-2))/pow(10,i-3);
            w=(shu-x*pow(10,i)-y*pow(10,i-1)-z*pow(10,i-2)-q*pow(10,i-3))/pow(10,i-4);
            e=shu-x*pow(10,i)-y*pow(10,i-1)-z*pow(10,i-2)-q*pow(10,i-3)-w*pow(10,i-4);
            if (x*y*z*w*e>ji){
                ji=x*y*z*q*w*e;
            }
        }
        if (k==6){
            x=shu/pow(10,i);
            y=(shu-x*pow(10,i))/pow(10,i-1);
            z=(shu-x*pow(10,i)-y*pow(10,i-1))/pow(10,i-2);
            q=(shu-x*pow(10,i)-y*pow(10,i-1)-z*pow(10,i-2))/pow(10,i-3);
            w=(shu-x*pow(10,i)-y*pow(10,i-1)-z*pow(10,i-2)-q*pow(10,i-3))/pow(10,i-4);
            e=(shu-x*pow(10,i) -y*pow(10,i-1)-z*pow(10,i-2)-q*pow(10,i-3)-w*pow(10,i-4))/pow(10,i-5);
            r=shu-x*pow(10,i)-y*pow(10,i-1)-z*pow(10,i-2)-q*pow(10,i-3)-w*pow(10,i-4)-e*pow(10,i-5);
            if (x*y*z*w*e*r>ji){
                ji=x*y*z*q*w*r*e;
            }
        }
    }
    cout<<ji;
    return 0;
}

回复

2 条回复,欢迎继续交流。

正在加载回复...