这道题其实挺有意思,多测里面还套了个多测。

思路就是用向量模拟删除过程,具体请看代码里的注释。

#include <bits/stdc++.h>
using namespace std;
int k,q,a[105];
void solve()
{
int n;
cin>>n;
vector<int> ve;
for(int i=1;i<=n;i++) ve.push_back(i);//把每个人放到向量里面
while(!ve.size()<a[1]) //当还可以删除时
{
int cnt=1;
/*
* cnt的作用
* 1. 把下标从0开始的ve与下标从1开始的a[]关联起来
* 2. vector的erase会自动补齐空位
* 如果没有cnt,第二次删除的则是错误的位置
* 所以用cnt统计目前删除了多少个数
*
* (cnt为什么初始是1? 请看第一条)
*
*/
for(int i=1;i<=k;i++)
if(a[i]<=ve.size()) //当还可以删除时
{
ve.erase(ve.begin()+a[i]-cnt); //则删除,此时用上了cnt
cnt++;//已删除+1
}
}
cout<<ve.size()<<" ";
}
void Solve()
{
cin>>k>>q;
for(int i=1;i<=k;i++) cin>>a[i];
sort(a+1,a+1+k); //排序是为了方便做这个 while(!ve.size()<a[1])
while(q--) solve();//q次询问
cout<<endl;
}
int main()
{
int t;
cin>>t;
while(t--) Solve();//t组数据
return 0;
}

题解:CF1956A Nene's Game的更多相关文章

  1. 2016 华南师大ACM校赛 SCNUCPC 非官方题解

    我要举报本次校赛出题人的消极出题!!! 官方题解请戳:http://3.scnuacm2015.sinaapp.com/?p=89(其实就是一堆代码没有题解) A. 树链剖分数据结构板题 题目大意:我 ...

  2. noip2016十连测题解

    以下代码为了阅读方便,省去以下头文件: #include <iostream> #include <stdio.h> #include <math.h> #incl ...

  3. BZOJ-2561-最小生成树 题解(最小割)

    2561: 最小生成树(题解) Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 1628  Solved: 786 传送门:http://www.lyd ...

  4. Codeforces Round #353 (Div. 2) ABCDE 题解 python

    Problems     # Name     A Infinite Sequence standard input/output 1 s, 256 MB    x3509 B Restoring P ...

  5. 哈尔滨理工大学ACM全国邀请赛(网络同步赛)题解

    题目链接 提交连接:http://acm-software.hrbust.edu.cn/problemset.php?page=5 1470-1482 只做出来四道比较水的题目,还需要加强中等题的训练 ...

  6. 2016ACM青岛区域赛题解

    A.Relic Discovery_hdu5982 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Jav ...

  7. poj1399 hoj1037 Direct Visibility 题解 (宽搜)

    http://poj.org/problem?id=1399 http://acm.hit.edu.cn/hoj/problem/view?id=1037 题意: 在一个最多200*200的minec ...

  8. 网络流n题 题解

    学会了网络流,就经常闲的没事儿刷网络流--于是乎来一发题解. 1. COGS2093 花园的守护之神 题意:给定一个带权无向图,问至少删除多少条边才能使得s-t最短路的长度变长. 用Dijkstra或 ...

  9. CF100965C题解..

    求方程 \[ \begin{array}\\ \sum_{i=1}^n x_i & \equiv & a_1 \pmod{p} \\ \sum_{i=1}^n x_i^2 & ...

  10. JSOI2016R3 瞎BB题解

    题意请看absi大爷的blog http://absi2011.is-programmer.com/posts/200920.html http://absi2011.is-programmer.co ...

随机推荐

  1. C++设计模式 - 策略模式(Strategy)

    组件协作模式: 现代软件专业分工之后的第一个结果是"框架与应用程序的划分","组件协作"模式通过晚期绑定,来实现框架与应用程序之间的松耦合,是二者之间协作时常用 ...

  2. MySQL创建和操纵表

    表创建基础 CREATE TABLE customers ( cust_id int NOT NULL AUTO_INCREMENT , cust_name char(50) NOT NULL , c ...

  3. #贪心#CF605A Sorting Railway Cars

    题目 一个长度为 \(n\) 的排列,每次可以将一个数移至开头或者结尾,问最少多少次使其升序排列 分析 让数字连续的情况尽量多才能让移出来的次数尽量少, 找到最长的数字连续段,若其长度为 \(len\ ...

  4. #Kruskal,分治#AT4569 Connecting Cities

    题目传送门 考虑如何去掉这个绝对值, 换句话说,如何减少边数并且能建出 MST. 在求解偏序问题时,往往会分而治之, 这样原来 \(O(n^2)\) 的做法就能够被优化. 考虑将所有点对半折开, 左半 ...

  5. OpenHarmony创新赛 | 您有一份创新激励奖待领取 请查收!

      2023开源和信息消费大赛 开放原子开源大赛OpenHarmony创新赛 (以下简称"OpenHarmony创新赛") 正如火如荼的进行当中 赛程也即将进入到提交作品的关键阶段 ...

  6. SpringBoot中bean的生命周期

    目录 概述 使用场景 代码演示bean初始化 TestSupport BeanPostProcessorImpl log 代码 概述 Bean 生命周期管理是 Spring Boot 中的关键功能之一 ...

  7. 4. Orthogonality

    4.1 Orthogonal Vectors and Suspaces Orthogonal vectors have \(v^Tw=0\),and \(||v||^2 + ||w||^2 = ||v ...

  8. python实现:有一个列表为num_list,找到一个具有最大和的连续子列表,返回其最大和。

    # 有一个列表为num_list,找到一个具有最大和的连续子列表,返回其最大和.# 示例:# 输入: [-3,1,-1,6,-1,2,4,-5,4]# 输出: 11# 解释: 连续子数组 [6,-1, ...

  9. 使用纯c#在本地部署多模态模型,让本地模型也可以理解图像

    之前曾经分享过纯c#运行开源本地大模型Mixtral-8x7B 当时使用的是llamasharp这个库和Mixtral的模型在本地部署和推理,前段时间我看到llamasharp更新到了0.11.1版本 ...

  10. 力扣553(java)-最优除法(中等)

    题目: 给定一组正整数,相邻的整数之间将会进行浮点除法操作.例如, [2,3,4] -> 2 / 3 / 4 . 但是,你可以在任意位置添加任意数目的括号,来改变算数的优先级.你需要找出怎么添加 ...