用了max和find,最后一个点一直超时,求调
查看原帖
用了max和find,最后一个点一直超时,求调
1245039
luuuyiii楼主2024/4/17 17:11
#include<bits/stdc++.h>
using namespace std;
int main() {
	cin.tie(0), cout.tie(0); ios::sync_with_stdio(false);
	int n, m, a, b, x[101][101]={0}, y[10001] = {0}, suki, z[10001] = {0}, maxn;
	cin >> n >> m >> a >> b;
	for(int i=1;i<=a;i++)
		for (int j = 1; j <= n; j++) {
			cin >> x[i][j]; y[j] += x[i][j];
		}
	for (int i = 1; i <= m; i++)
	{
		maxn=max_element(y + 1, y + n + 1)-y;
		z[i] = maxn; y[maxn] = 0;
	}
	suki = max_element(x[b] + 1, x[b] + 1 + n)-x[b];
	if (*find(z + 1, z + 1 + m, suki)) {
		cout << suki << " ";
		for (int i = 1; i <= m; i++) {
			if (z[i] != suki)
				cout << z[i] << " ";
		}
	}
	else {
		for (int i = 1; i < m; i++) {
			cout << z[i] << " ";
		}cout << suki;
	}
	return 0;
}

如题,希望大佬调一下

2024/4/17 17:11
加载中...