我们会在比赛结束之后有一个收费的题目直播讲解,价格是19.9元,报名链接是:
https://hihocoder.com/courses/10
14:30即可加入直播房间,我们会留给大家一段休息时间,大约在14:45开始正式讲解。
我们会在比赛结束之后有一个收费的题目直播讲解,价格是19.9元,报名链接是:
https://hihocoder.com/courses/10
14:30即可加入直播房间,我们会留给大家一段休息时间,大约在14:45开始正式讲解。
using namespace std;
int par[maxn];
void init(int n) { for(int i = 1;i <= n;i++) par[i] = i; }
int find(int x) { return par[x] = par[x] == x ? x : find(par[x]); }
int a[maxn]; int s[maxn]; int n,k;
int main()
{
scanf("%d%d",&n,&k);
init(n);
for(int i = n;i >= 1;i--)
scanf("%d",&a[i]);
int ans;
for(int i = 1;i <= n;i++)
{
int cnt = 0;
s[a[i]] = 1;
if(a[i] + 1 <= n && s[a[i]+1] > 0)
{
int j = find(a[i]+1);
par[j] = a[i];
s[a[i]] = s[j]+s[a[i]];
if(s[a[i]] == k) cnt = 1;
else cnt = 0;
}
if(a[i] - 1 >= 1 && s[a[i]+1] > 0)
{
int j = find(a[i]-1);
par[j] = a[i];
s[a[i]] = s[j]+s[a[i]];
if(s[a[i]] == k) cnt = 1;
else cnt =0;
}
if(cnt == 1) ans = i;
}
printf("%d\n",n-ans);
}
有那个大神帮忙看看 为什么按照ppt那种思路上做了还t了
棒棒棒!
今天直播的ppt没有嘛?
2题居然还可以0个插槽,一直被坑到比赛结束才发现……哭瞎
第二题是挺多坑的...
https://media.hihocoder.com/contests/offer26/offer26.pptx