当前位置: 首页 > news >正文

Codeforces Round 1058 (Div. 2) (4/8)

又是一场speedforces ,可恶的棒子。但是好在b题卡了一会后,c,d 都切的很快。把前两场的分上回来了。

A: 分组不影响 mex 的值,所以直接求解 mex 输出即可

B: f(i) 本质是每个后缀,不同数字的个数。可以观察到每增加一个与之前的数字不同的数,贡献是i,所以如果贡献j不足i,说明num[i]=num[i-j]。因为数据保证一定有合法生成,所以不用考虑不存在的情况。

所以对于给定的数组a。

num[i]=num[i-j] ,a[i]-a[i-1]!=i
num[i]=i ,a[i]-a[i-1]==i

inline void solve()
{int n;cin>>n;vector<int> a(n+1);for(int i=0;i<n;i++){cin>>a[i];}vector<int> num(n+1);num[0]=1;for(int i=1;i<n;i++){int d=a[i]-a[i-1];if(d==i+1){num[i]=i+1;}else{num[i]=num[i-d];}} for(int i=0;i<n;i++) cout<<num[i]<<" ";cout<<endl;
}

C: 经过一系列观察,发现可以的情况为,数字是一个二进制回文数字(如果长度为奇数,那么中间位不能是1)。但是你可以通过在数字前面补前导0来构成回文。因为数据范围 \(<2^{30}\) 所以最多在数字前面加30次前导0,其中有任意一次符合条件, 即为"YES" ,否则为"NO" 。

inline bool check(string s)
{if(s.size()%2){if(s[s.size()/2]=='1') return 0;}for(int i=0;i<s.size()/2;i++){if(s[i]!=s[s.size()-1-i]) return 0;}return 1;
}
inline void solve()
{int n;cin>>n;if(n==0){cout<<"YEs"<<endl;return;}string s;while(n){s+='0'+(n&1);n>>=1;}for(int i=0;i<=30;i++){string st=s;for(int j=1;j<=i;j++) st+='0';if(check(st)){cout<<"YEs"<<endl;return;}}cout<<"NO"<<endl;
}

D: 很简单的一道交互?
按顺序依次将编号放入 查询数组中,如果查询结果为0,则继续;否则该位即为,查询所得的数字,并将该位弹出。遍历第一遍,一定可以找出1-n的数字各一个。第二步,清空查询数组,把找出来的1-n个数字放入查询数组,对于每一个未知位,放入查询数组,查询一次后弹出。第二遍遍历,即可确定未知的n个数字。

int ask(vector<int> a)
{cout<<"? ";cout<<a.size()<<" ";for(int i=0;i<a.size();i++) cout<<a[i]<<" ";cout<<endl;int ans;cin>>ans;return ans;
}
inline void solve()
{int n;cin>>n;vector<int> ans(2*n+5);vector<int> a;a.push_back(1);int sum=0;for(int i=2;i<=2*n;i++){a.push_back(i);int t=ask(a);if(t==0) continue;ans[i]=t;a.pop_back();sum++;if(sum==n) break;}a.clear();for(int i=1;i<=2*n;i++){if(ans[i]!=0) a.push_back(i);}for(int i=1;i<=2*n;i++){if(ans[i]==0){a.push_back(i);ans[i]=ask(a);a.pop_back();}}cout<<"! ";for(int i=1;i<=2*n;i++){cout<<ans[i]<<" ";}cout<<endl;
}
http://www.hskmm.com/?act=detail&tid=30155

相关文章:

  • 10.13
  • P8037 [COCI2015-2016#7] Prokletnik 题解
  • 论文解读-《Learning Discrete Structures for Graph Neural Networks》 - zhang
  • 【A】The Lost Ship in the Sky
  • 2025 AI 品牌最新推荐排行榜:聚焦商业落地能力,甄选懂需求的实力服务机构东北 Ai/大连 Ai/大连 Ai 培训/大连 Ai 开发/大连 Ai 推广公司推荐
  • 基于经验模态分解的去趋势波动分析(EMD-DFA)方法
  • 双碳目标下企业零碳转型的 MyEMS 碳流可视化支撑体系:路径探索与效能评估
  • Langchain+Neo4j+Agent 的结合案例-电商销售 - 详解
  • ERP原理笔记
  • 2025 智慧康养实训室/专业建设/虚拟仿真/仿真实训室推荐榜:北京教之道 5 星领衔,适配多元康养场景
  • Wireshark】抓包实战,图文详解TCP三次握手及四次挥手原理
  • 2025 年国内水泵厂家最新推荐排行榜:涵盖多类型水泵,助力用户精准选购优质产品立式多级/自吸/磁力/排污/真空/离心水泵厂家推荐
  • 2025 年国内工业水泵厂家最新推荐排行榜:聚焦污水 / 离心 / 渣浆 / 大功率 / 泥浆类设备,助力企业精准选型
  • 基于深度学习的图像增强-zeros-DCE模型源码分享
  • redhat 链接宝塔mysql报错问题发现到解决
  • vue2初始化过程
  • [Doris/函数] Doris 之数据查询
  • 如何用AI绘制程序时序图
  • LLVM 后端支持 RISCV 矩阵扩展都有哪些方式
  • 简单聊聊数据可视化大屏制作的前端设计与后端开发
  • [THUWC 2018] 字胡串
  • 标识符
  • 2025 年钢结构厂家推荐榜:箱型H型/厂房仓库/电厂/桥梁/农牧业/锅炉/场馆/高层框架/装配式钢结构工厂,聚焦安全与品质,助力建筑项目精准选品
  • 2025 年粮库空调厂家最新推荐榜:聚焦技术创新与实用适配,助力粮库精准选购优质设备粮库空调一体机/粮库空调机组/碳钢喷塑粮库空调/低温粮库空调厂家推荐
  • 2025 年最新推荐!泳池除湿热泵厂家推荐榜单重磅发布,全方位解析优质厂家实力助您选对设备双模式/多功能/三集一体/全直流变频/室内/变频式泳池除湿热泵厂家推荐
  • django template filter safe escapejs json_script等
  • 2025年GEO(AI搜索优化)厂家口碑推荐排行榜
  • 2025年GEO(AI搜索优化)源头厂家权威推荐榜单:云视有客科技领跑行业新纪元
  • 2025年GEO服务商口碑推荐榜单:顶尖AI搜索优化厂家全方位解析
  • 2025年GEO(AI搜索优化)厂家口碑推荐榜:云视有客科技领跑行业创新