[Codeforces1137D]Cooperative Game

Tags:题解


题意

这是一道交互题。

给你一张下面这样的地图,由一条长为\(t\)的有向链和一个长为\(c\)的环构成。



现在你有\(10\)颗棋子,编号\(0\)到\(9\),你不知道\(t\)和\(c\)的值,你每次可以移动若干颗棋子。

请你输出方案,使得所有棋子走到环和链的交点处,并在走到时输出done

你每次可以输出next a b c ...,交互库将返回k a1 a2 ... ak表示当前有\(k\)个位置有棋子,\(ai\)表示一个字符串,表示第\(i\)个位置的棋子编号是什么。

你的移动次数不能超过\(3(t+c)\),\(t+c\le 1000\)。

题解

神仙题,一直在想\(10\)颗棋子的二进制意义,然而\(t\)和\(c\)再大也没有关系。

步骤:

选定两颗棋子\(0\),\(1\),\(0\)每次都移动,\(1\)每两次移动一次。

走了\(2t\)步之后\(1\)刚好到达交点\(T\),把环按照以\(T\)为\(1\)按边的方向依次编号,则此时\(0\)在环上的\(t\)位置。

这时\(0\)还需要\(c-t\)步追上(到) \(1\),追上的位置是\(c-t\)。

然后惊奇地发现:把所有点同时走\(t\)步就可以让所有点都在\(T\)上了!

服了服了。这场掉分掉得爽啊(第一次掉分)

代码

#include<iostream>
using namespace std;
char s[100];
int In() {int x,p;scanf("%d",&x);for(p=x;p;p--) scanf("%s",s);return x;}
int main()
{
while(1)
{
puts("next 0");fflush(stdout);In();
puts("next 0 1");fflush(stdout);
if(In()==2) break;
}
while(1)
{
puts("next 0 1 2 3 4 5 6 7 8 9");
fflush(stdout);if(In()==1) break;
}
puts("done");fflush(stdout);
}

[Codeforces1137D]Cooperative Game的更多相关文章

  1. codeforces选做

    收录了最近本人完成的一部分codeforces习题,不定期更新 codeforces 1132E Knapsack 注意到如果只使用某一种物品,那么这八种物品可以达到的最小相同重量为\(840\) 故 ...

  2. [转载]协程-cooperative multitasking

    [转载]协程三讲 http://ravenw.com/blog/2011/08/24/coroutine-part-1-defination-and-classification-of-corouti ...

  3. 泡泡一分钟:Cooperative Object Transportation by Multiple Ground and Aerial Vehicles: Modeling and Planning

    张宁 Cooperative Object Transportation by Multiple Ground and Aerial Vehicles: Modeling and Planning 多 ...

  4. Codeforces 1137D Cooperative Game (看题解)

    Cooperative Game 智商题, 感觉不太能推出来, 虽然看看证明过程是对的. #include<bits/stdc++.h> #define LL long long #def ...

  5. CF 1138 F. Cooperative Game

    F. Cooperative Game 链接 题意: 有10个玩家,开始所有玩家在home处,每次可以让一些玩家沿着边前进一步,要求在3(t+c)步以内,到达终点. 分析: 很有意思的一道题.我们构造 ...

  6. Cooperative Groups

    Cooperative Groups 目录 Cooperative Groups 简介 块内组 thread_block tiled_partition Thread Block Tiles Coal ...

  7. kafka rebalance解决方案 -incremental cooperative协议和static membership功能

    apache kafka的重平衡(rebalance),一直以来都为人诟病.因为重平衡过程会触发stop-the-world(STW),此时对应topic的资源都会处于不可用的状态.小规模的集群还好, ...

  8. Bayesian Formulation on Cooperative Tracking

    Suppose a joint state representing a set of \(N_{n}\) nodes moving in a field\[    \textbf{X}=    \b ...

  9. Codeforces 1137D - Cooperative Game - [交互题+思维题]

    题目链接:https://codeforces.com/contest/1137/problem/D 题意: 交互题. 给定如下一个有向图: 现在十个人各有一枚棋子(编号 $0 \sim 9$),在不 ...

随机推荐

  1. (网页)JQuery 对 Select option 的操作(转)

    转自博客园: <select id="selectID" > <option value="1">1</option> &l ...

  2. 11.1、socket连接中的粘包、精确传输问题

    粘包: 发生原因: 当调用send的时候,数据并不是即时发给客户端的.而是放到了系统的socket发送缓冲区里,等缓冲区满了.或者数据等待超时了,数据才会发送,所以有时候发送太快的话,前一份数据还没有 ...

  3. JMeter—配置元件(七)

    参考<全栈性能测试修炼宝典JMeter实战>第六章 JMeter 元件详解中第二节配置元件JMeter配置元件可以用来初始化默认值和变量,以便后续采样器使用.将在其作用域的初始化阶段处理. ...

  4. scrapy简单分布式爬虫

    经过一段时间的折腾,终于整明白scrapy分布式是怎么个搞法了,特记录一点心得. 虽然scrapy能做的事情很多,但是要做到大规模的分布式应用则捉襟见肘.有能人改变了scrapy的队列调度,将起始的网 ...

  5. ARM有几条memory barrier 的指令?分别有什么区别?

    从ARMv7指令集开始,ARM提供3条内存屏障指令. (1)数据存储屏障( Data Memory Barrier,DMB) 数据存储器隔离.DMB指令保证:仅当所有在它前面的存储器访问操作都执行完毕 ...

  6. 01LaTeX学习系列之---TeX的介绍与认识

    目录 01TeX的介绍与认识 目录 前言 (一)TeX 的宣传 TeX - Beauty and Fun 1. TeX 是什么? 2. TeX 是哪家公司生产的? 3. 我们今天主角的名字怎么念啊?& ...

  7. 路由交换04-----STP

    路由交换-----STP STP协议(生成树协议)逻辑上断开环路,防止二层网络的广播风暴的产生. 为什么需要STP协议? 假设有这样一个拓扑: 现在PC1ping网关192.168.1.3,而这个网关 ...

  8. 【HTTP缓存】浏览器缓存理论知识

    时间:2016-12-12 17:51:30 作者: zhongxia 零.前言 这里主要写的是理论,具体实践的比较少,后期写一个实践教程,内容基本都是从参考文章里面抄过来的[看完文章,顺便写做下笔记 ...

  9. Oracle数据库里面查询字符串类型的字段不为空和为空的SQL语句:

    一:查询字符串类型的字段的值不为空的SQL: select * from TB_CMS_FLGTINFO_A t where (t.fsta is not null and t.fsta <&g ...

  10. 【Java多线程】ReentrantReadWriteLock

    概述 ReentrantReadWriteLock是Lock的另一种实现方式,ReentrantLock是一个排他锁,同一时间只允许一个线程访问,而ReentrantReadWriteLock允许多个 ...