玄学数据
查看原帖
玄学数据
565707
mediocre_楼主2024/8/22 10:18

也不知道比赛的时候是怎么想的

写出了这段惊天代码

#include <bits/stdc++.h>
using namespace std;
int n, m, a, ans;
queue <int> q[1005];
int main() {
	scanf("%d%d", &n, &m);
	for (int i = 1; i <= n; ++i) {
		scanf("%d", &a);
		q[a].push(i);
	}
	int i = 1;
	while (ans < n) {
		if (q[i].empty()) {
			++i;
			if (i > m) i = 1;
			continue;
		}
		printf("%d\n", q[i].front());
		q[i].pop();
		++ans;
		++i;
		if (i > m) i = 1;
	}
	return 0;
}

而我的代码很容易就想到一个漏洞

比如输入

5 3
1 1 1 2 3

时

正常输出应该是

1 4 2 5 3

而我的程序会输出

1 4 5 2 3

而就是这段明显不对的代码

却AC了。。。

请求加强数据

2024/8/22 10:18
加载中...