社区讨论

紧急求助!洛谷60但CSP爆0求助!有详细代码解读!

P8818[CSP-S 2022] 策略游戏参与者 17已保存回复 39

讨论操作

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

当前回复
39 条
当前快照
1 份
快照标识符
@lo7lnymy
此快照首次捕获于
2023/10/27 03:51
2 年前
此快照最后确认于
2023/10/27 03:51
2 年前
查看原帖
RT,这是我的代码
CPP
#include<bits/stdc++.h>
using namespace std;
int n,m,q;
long long a[10005],b[10005];
long long c[10005][10005];
int main()
{
    //freopen("game.in","r",stdin);
    //freopen("game.out","w",stdout);
    cin>>n>>m>>q;
    for(int i=1;i<=n;i++)
    {
        cin>>a[i];
    }
    for(int i=1;i<=m;i++)
    {
        cin>>b[i];
        for(int j=1;j<=n;j++)
        {
            c[j][i]=a[j]*b[i];
        }
    }
    while(q--)
    {
        int u,d,l,r;
        cin>>u>>d>>l>>r;
        long long cmpm=0-1e+18-5;
        for(int i=u;i<=d;i++)
        {
            long long cmp=1e+18+5;
            for(int j=l;j<=r;j++)
            {
                cmp=min(cmp,c[i][j]);
            }
            cmpm=max(cmp,cmpm);
        }
        cout<<cmpm<<endl;
    }
    return 0;
}

文件目录/文件没有问题,但是CSP测评爆0,这是洛谷数据水还是CSP的问题?

有没有申诉的必要?

代码原理:

样例1
00
-34
6-8
l1,r1用来框出列
例如样例1第1次输入l1,r1 为1,3;
那么我框出
00
-34
6-8
l2,r2用来框出行
例如样例1第2次输入l2,r2 为1,2
那么我框出
00
-34
6-8
显然什么事情没有发生

接下来是重点

把每行最小的数字找出来
即0,-3,-8;
再找出0,-3,-8的最大数
0
所以输出0;

样例1第二次

样例1第2次输入l1,r1 为2,3
那么我框出
-34
6-8
l2,r2用来框出行
例如样例1第2次输入l2,r2 为2,2
那么我再框出
4
-8
然后把每行最小的数字找出来
即4,-8;
再找出4,-8中最大的数字;即4;输出

在洛谷测出60分(前12个点AC,后8个RE)

在CSP测出0分

感谢各位大佬指出原因!

回复

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

正在加载回复...