尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

Codeforces 2155D Batteries 题解 [ 绿 ] [ 图论 ] [ Ad-hoc ]

Codeforces 2155D Batteries 题解 [ 绿 ] [ 图论 ] [ Ad-hoc ]
📅 发布时间:2026/6/19 14:02:52

Batteries:很有趣的一个 Ad-hoc,之前见到过一个类似的构造。如果对上脑电波应该很快能秒掉。

看到这种比较奇怪的交互次数限制,可以想到拆限制的式子,\(\lfloor\dfrac{n^2}{a}\rfloor = \lfloor\dfrac{n}{a}\cdot n\rfloor\)。这提示我们对于每一个电池最多只能操作 \(\bm{\dfrac{n}{a}}\) 次。

然后形式化一下题意,可以转化为一个 \(n\) 点的完全图,图上有 \(a\) 个黑点,一条边是黑边当且仅当 \(u, v\) 都是黑点。你需要在 \(\lfloor\dfrac{n^2}{a}\rfloor\) 次内找出一条黑边。

一眼看上去非常没有头猪,所以可以试试拎出来环、菊花、树、链、二分图之类的特殊图来研究。然后你就能发现,如果从这张图里,随意挑出一个 \(n\) 点的简单环,然后往环上加一些捷径边,就能完成构造。具体而言,令 \(k = 1\),然后按顺序执行下列操作(连边的意思就是对 \(u, v\) 进行一次询问):

  1. 对于所有的 \(1 \le i \le n\),连边 \(i\to(i+k - 1)\bmod n + 1\),直到找到一个黑边。
  2. \(k\gets k + 1\),返回第一步。

说人话就是先搞出一个 \(n\) 个点的有向环,然后每一轮对每个点依次询问走 \(1, 2, 3, 4, \cdots\) 步抵达的点进行询问。

正确性证明是简单的,对于有 \(a\) 个黑点的环,任意两个黑点之间的距离的最小值不会超过 \(\dfrac{n}{a}\),因此每个黑点都跳 \(\bm{\dfrac{n}{a}}\) 步就一定能找到一条黑边,这和我们上文拆的限制是一样的。

#include <bits/stdc++.h>
#define fi first
#define se second
#define eb(x) emplace_back(x)
#define pb(x) push_back(x)
#define lc(x) (tr[x].ls)
#define rc(x) (tr[x].rs)
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
typedef long double ldb;
using pi = pair<int, int>;
int n, res;
void solve()
{cin >> n;int now = 1;while(1){for(int i = 0; i < n; i++){int v = (i + now) % n;cout << i + 1 << " " << v + 1 << endl;cin >> res;if(res == 1) return;}now++;}
}
int main()
{int t;cin >> t;while(t--) solve();return 0;
}

相关新闻

  • Ambari-bigtop搭建hadoop数据仓库架构
  • Python中的`namedtuple`:命名元组的用法与优势
  • directx 与d3d 什么关系

最新新闻

  • 标准库-8.RTC实时时钟
  • 告别单调终端:用pyfiglet打造你的Python命令行艺术
  • 如何在Mac上使用CXPatcher提升CrossOver游戏性能:终极优化指南
  • 从“向内修德”到“向外料敌”:七境体系的元认知跃迁
  • 深入解析sys.set_int_max_str_digits:从ValueError到Python大整数打印的边界控制
  • 2026年6月最新劳力士中国官方售后服务网点地址及客服电话一览 - 劳力士服务中心

日新闻

  • 5分钟掌握Python进化算法:Geatpy高性能优化工具完全指南
  • Microchip 24AA044 EEPROM选型与应用全指南:从参数解析到实战编程
  • 华为的鸿蒙到底有多牛?为什么称作遥遥领先?

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号