首页 > 其他分享 >Codeforces Round 887 (Div. 2)

Codeforces Round 887 (Div. 2)

时间:2023-07-24 12:22:04浏览次数:50  
标签:pre 10 887 int 位置 Codeforces 答案 Div

C. Ntarsis' Set

image-20230724121346402

(\(1 \leq n,k \leq 2 \cdot 10^5\))

题解:思维 + 二分

  • 我们不妨反向考虑
  • 由于答案最后一次一定在第一个位置
  • 所以答案上一轮一定在第一个空的位置,假设这个位置为\(x\)
  • 那么如果说要使得答案在位置\(x\),那么上上一轮答案一定在第\(x\)个空的位置
  • 我们可以预处理空位置数量的前缀和
  • 然后枚举\(k\)即可,每次枚举二分找到空位置
const int N = 2e5 + 10, M = 4e5 + 10;

int n, k;
int a[N];
int pre[N];

void solve()
{
    cin >> n >> k;
    for (int i = 1; i <= n; ++i)
    {
        cin >> a[i];
        pre[i] = pre[i - 1] + a[i] - a[i - 1] - 1;
    }

    if (a[1] > 1)
    {
        cout << 1 << endl;
        return;
    }
    int ans = 1;
    for (int i = 1; i <= k; ++i)
    {
        int p = lower_bound(pre + 1, pre + n + 1, ans) - pre;
        ans = a[p - 1] + (ans - pre[p - 1]);
    }
    cout << ans << endl;
}

标签:pre,10,887,int,位置,Codeforces,答案,Div
From: https://www.cnblogs.com/Zeoy-kkk/p/17576925.html

相关文章

  • Codeforces Round 887 (Div 2) C. Ntarsis' Set
    Ntarsis'Set题意是给你n个数,每次按照顺序删除位于a[i]位置的这n个数,问k次后最小的是多少参考这位大佬的题解CodeforcesRound887(Div2)A~C-知乎(zhihu.com)结合一个官方题解,进行一次操作后,由于前面删掉i个数,a[i]到a[i+1]间所有数的排名都要-=i,那么在a[i]到a[i+1]之间的......
  • 【题解】Educational Codeforces Round 151(CF1845)
    VP战报:1h过了A,B,C,D然后被E罚坐1hrank:210th题解只有A-EA.ForbiddenInteger题目描述:你需要构造一个正整数序列,满足:对于\(i\),\(a_i\lek\)且\(a_i\not=x\)。\(\suma_i=n\)。如无法构造,输出NO,否则输出YES后,输出序列长度与序列中的每一个数。多测\(t\le......
  • Codeforces Round 886 (Div. 4) 题解 A - H
    A.ToMyCritics题目大意给定三个数,你可以挑俩数加起来,问这仨数有没有可能加起来大于等于\(10\).解题思路我们找其中最大的两个数相加与\(10\)比较即可。ACCode#include<iostream>#include<algorithm>#include<cstring>#defineendl'\n'#defineiosios::sync......
  • Codeforces Round 886 (Div. 4) 全题题解
    我关注的人中正式参与比赛排名公示:#Who=Penalty*ABCDEFGH1(980)Chen_Jinhui7381\(\color{#00CC00}{\textbf{+}}\)00:05\(\color{#00CC00}{\textbf{+1}}\)00:17\(\color{#00CC00}{\textbf{+}}\)00:19\(\color{#00CC00}{\textbf{+}}\)01:08......
  • 1.使用jquery两种方式实现设置页面中的div元素的宽度为200px,高度为200px,背景颜
    使用jQuery两种方式实现设置页面中的div元素的宽度为200px,高度为200px,背景颜色整体流程为了实现这个目标,我们需要按照以下步骤进行操作:引入jQuery库文件使用第一种方式实现设置div元素样式使用第二种方式实现设置div元素样式步骤详解1.引入jQuery库文件首先,我们需要在HT......
  • Codeforces Round 886 (Div. 4)记录
    A-ToMyCritics代码:#include<cstdio>#include<algorithm>#include<cmath>#include<vector>#include<string.h>#include<set>#include<string>#include<map>#include<iostream>#include<queue>#in......
  • Codeforces Round 885 (Div. 2) A - C
    A.VikaandHerFriendsProblem-A-Codeforces题意:​ 在\(n*m\)的范围内,\(a\)和她的朋友在追逐游戏,每秒\(a\)和朋友必须从当前位置移到相邻的格子里(上下左右),在这一秒结束时\(a\)不能和朋友在同一格内。现在知道\(a\)和每一个朋友的初始位置,问\(a\)是否会被朋友追上。思路:......
  • Codeforces Round 886 (Div. 4)补题
    CodeforcesRound886(Div.4)A~D://A:boolsolve(){ cin>>a[1]>>a[2]>>a[3]; sort(a+1,a+4); returna[2]+a[3]>=10?1:0;}//B:voidsolve(){ intn; cin>>n; intmaxa=0; intnum=0; intx,y; for(inti=1;i<=n;i++){cin>......
  • Codeforces Round 886 (Div. 4)
    F.WeWereBothChildren题解:约数我们先利用\(map\)记录\(a_i\)的出现次数然后对\(map\)中的每一个元素的在其所有不超过\(n\)的倍数的位置上都加上对应的贡献时间复杂度:调和级数\(O(nlogn)\)constintN=2e5+10,M=4e5+10;intn;inta[N];map<int,int>......
  • Codeforces Round 886 (Div. 4)
    CodeforcesRound886(Div.4)A-ToMyCritics思路:最大的两个数的和大于等于10则YES#include<bits/stdc++.h>usingnamespacestd;#defineintlonglongtypedefpair<int,int>PII;typedefpair<string,int>PSI;typedefpair<string,string>PSS;cons......