啊。。。废了(玄关)
查看原帖
啊。。。废了(玄关)
780774
iqiqiqiqiqiqiqiq楼主2024/3/18 19:24

我的代码:

#include<bits/stdc++.h>
using namespace std;
int t[21][21],m[21][21],n,k,p[401],d[21],a[21],sec,pn;

void make(){
    for(int i=0;i<pn;i++){
    	if(t[p[i]][a[p[i]]]==0){
			p[i]=0;
		}
		if(p[i]!=0&&d[m[p[i]][a[p[i]]]]==0){
			d[m[p[i]][a[p[i]]]]=p[i];
		}
	}for(int i=1;i<=n;i++){
		if(d[i]){
			t[d[i]][a[d[i]]]--;
		}if(t[d[i]][a[d[i]]]==0){
			a[d[i]]++;
			d[i]=0;
		}
	}while(p[0]==0){
		for(int i=1;i<pn;i++){
			p[i-1]=p[i];
		}p[pn]=0;
		pn--;
	}
}
int main(){
    cin>>n>>k;
    for(int i=0;i<k;i++){
        a[i]=1;
    }
    pn=n*k-1;
    for(int i=0;i<n*k;i++){
        cin>>p[i];
    }for(int i=1;i<=k;i++){
        for(int j=1;j<=n;j++){
            cin>>m[i][j];
        }
    }for(int i=1;i<=k;i++){
        for(int j=1;j<=n;j++){
            cin>>t[i][j];
        }
    }while(pn>=0){
        make();
        sec++;
    }cout<<sec;
    return 0;
}

然而不幸的是,万紫千红。。。

帮忙找错吧,谢谢啊路人。

2024/3/18 19:24
加载中...