求助

回复帖子

@潜在了H2O下面  2021-10-14 13:25 回复

离谱,我代码IDE,本地,老师的lemon评测都能过,为啥放luogu上WA了…

@潜在了H2O下面  2021-10-14 13:49 回复 举报

@pidan 草我错了

#include<bits/stdc++.h>
using namespace std;
struct node {
    int x,id;
} a[25005];
bool cmp1(node a,node b) {
    return a.x<b.x;
}
bool vis[15001];
vector<int> t[15001];
int ans[25005][10];
int n,m;
void doit(int aa,int b,int c) {
    if(b*4>=c+3*aa) {
        return;
    }
    int tmp=c+(b-aa)/2;
    if(!vis[tmp]) {
        return;
    }
    if(tmp==aa||tmp==b||tmp==c) {
        return;
    }
    for(int i=0; i<t[aa].size(); i++) {
        for(int j=0; j<t[b].size(); j++) {
            for(int k=0; k<t[c].size(); k++) {
                int tmp1=t[c][k];
                int tmp2=t[b][j];
                int tmp3=t[aa][i];
                for(int l=0; l<t[tmp].size(); l++) {
                    ans[tmp3][1]++;
                    ans[tmp2][2]++;
                    ans[tmp1][3]++;
                    ans[t[tmp][l]][4]++;
                }
            }
        }
    }
    return;
}
int main() {
    scanf("%d%d",&n,&m);
    for(int i=1; i<=m; i++) {
        scanf("%d",&a[i].x);
        vis[a[i].x]=true;
        a[i].id=i;
        t[a[i].x].push_back(a[i].id);
    }
    for(int i=1; i<=n; i++) {
        if(!vis[i]) {
            continue;
        }
        for(int j=i+1; j<=n; j++) {
            if(!vis[j]) {
                continue;
            }
            if((i&1)!=(j&1)) {
                continue;
            }
            for(int k=j+1; k<=n; k++) {
                if(!vis[j]) {
                    continue;
                }
                doit(i,j,k);
            }
        }
    }
    for(int i=1; i<=m; i++) {
        printf("%d %d %d %d\n",ans[i][1],ans[i][2],ans[i][3],ans[i][4]);
    }
    return 0;
}
反馈
如果你认为某个帖子有问题,欢迎向洛谷反馈,以帮助更多的同学。



请具体说明理由,以增加反馈的可信度。