社区讨论
90分tle求调!
P1638逛画展参与者 1已保存回复 0
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @mdb6okm1
- 此快照首次捕获于
- 2025/07/20 12:35 8 个月前
- 此快照最后确认于
- 2025/11/04 04:04 4 个月前
CPP
#include <bits/stdc++.h>
using namespace std;
constexpr int N = 1e6 + 7;
int a[N], n, m;
bool flag;
int main()
{
cin >> n >> m;
for (int i = 1; i <= n; i++)
{
cin >> a[i];
}
if (n == m)
cout << "1 " << n;
int l = INT_MAX, r, minn = INT_MAX;
for (int i = 1, j; i <= n; i++)
{
bool vis[2007] = {0};
j = i;
int cnt = 0, tot = 0;
while (j <= n && cnt < m)
{
tot++;
if (tot > minn)
break;
if (vis[a[j]])
{
j++;
continue;
}
vis[a[j]] = 1;
cnt++;
j++;
}
// cout << i << ' ' << j << endl;
if (cnt == m)
{
if (tot == m && !flag)
{
l = i, r = j - 1;
break;
}
if (tot < minn)
{
minn = tot;
l = i, r = j - 1;
}
else if (tot == minn)
{
if (i < l)
{
l = i, r = j - 1;
}
}
}
}
cout << l << ' ' << r;
return 0;
}
回复
共 0 条回复,欢迎继续交流。
正在加载回复...