2 条题解

  • -2
    @ 2024-12-11 22:53:25

    班门弄斧一下,没用结构体

    #include<bits/stdc++.h>
    using namespace std;
    bool vis[501];
    int m,n,t[501],w[501];
    int main(){
    	freopen("riddle.in","r",stdin);
    	freopen("riddle.out","w",stdout);
    	cin >> m >> n;
    	for (int i=1;i<=n;i++) cin >> t[i];
    	for (int i=1;i<=n;i++) cin >> w[i];
    	for (int i=n;i>=1;i--){
    	int p=0;
    	for (int j=1;j<=n;j++) if (!vis[j]&&t[j]>=i){
    		if (w[j]>w[p]) p=j;
    	}
    		if (p>0) vis[p]=1;
    	}
    	for (int i=1;i<=n;i++) if (!vis[i]) m-=w[i];
    	cout << m << endl;
    	return 0;
    }
    

    比较菜,请多指教

    信息

    ID
    443
    时间
    1000ms
    内存
    256MiB
    难度
    4
    标签
    递交数
    32
    已通过
    17
    上传者