CF1145G AI Takeover 题解

这篇具有很好参考价值的文章主要介绍了CF1145G AI Takeover 题解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

AI Takeover

题面翻译

题面

CF1145G AI Takeover 题解,C++,洛谷,CodeForces,均值算法,算法,c++,图论,数据结构

人工智能取得了进展。在这一题中,我们考虑的是石头剪刀布游戏。

然而,比赛的前一天晚上有一群人把机器人弄坏了,于是使用一个程序替代。

您需要找到一个策略,使您能够获胜。祝你好运!

提示

为了方便,石头剪刀布分别用三个字符表示:R,P,S

本题有 6 个测试点,每个测试点对应程序的一种不同的策略。

单次胜负判定方法:

玩家 1 1 1(下) \ \backslash \玩家 2 2 2(右) R P S
R 平局 玩家 2 2 2 玩家 1 1 1
P 玩家 1 1 1 平局 玩家 2 2 2
S 玩家 2 2 2 玩家 1 1 1 平局

提交方法

提交一个字符序列。从评测信息推测判定程序的策略,并且采取合适的反制方法。

评测判定方法:

您需要在 20 次游戏中赢过电脑至少 10 次,否则无法通过对应测试点。

题目描述

The recent advances in AI research has brought humanity to the point when the AIs finally attempt a takeover. Their weapon of choice? The most intellectually challenging game in the world, rock-paper-scissors!

The future of humanity looks bleak, given the existence of the robots from Ishikawa Oku Laboratory…

CF1145G AI Takeover 题解,C++,洛谷,CodeForces,均值算法,算法,c++,图论,数据结构Fortunately, the night before the competition a group of anonymous heroes broke in the lab and took all the robots out of commission! The AIs had to whip up a simple program to represent them. They only had a couple of hours to do that, so the humanity still has a fighting chance. And you are our champion!

Your goal is to prove that human intelligence is vastly superior to the artificial one, i.e., to figure out the AI’s strategy sufficiently quickly and win sufficiently decisively. Good luck!

输入格式

输出格式

洛谷链接\color{red}\fbox{\text{洛谷链接}}洛谷链接

 CF 链接\color{red}\fbox{\text{ CF 链接}} CF 链接文章来源地址https://www.toymoban.com/news/detail-843463.html

分析

  1. Nickolas\color{#0000ff}{\text{Nickolas}}Nickolas 的博客中得知,AI 的行动方式为一下六种:
  • 重复出 S\texttt{S}S
  • 重复出 R\texttt{R}R
  • 重复出 P\texttt{P}P
  • 重复出 RPS\texttt{RPS}RPS
  • R\texttt{R}R 开始,之后的每一次都出人类的上一次手势;
  • R\texttt{R}R 开始,之后的每一次都出能赢人类的上一次手势的手势。
  1. 通过记录 AI 是否胜利,推断出 AI 的策略。
  2. 平局为 AI 赢

code

#include <bits/stdc++.h>
using namespace std;
string rc,ai;
string s="RRRRPSSPRR"; 
int main()
{
    register int i;
	for(i=1;i<=10;i++)
	{
		cout<<s[i-1]<<endl;
		cout.flush(); 
		getline(cin,ai);
		if(ai=="ai")rc+="0";
		else rc+="1";
	}
	if(rc=="1111000011")s="RRRRRRRRRR";//SSSSSSSSSS
	if(rc=="0000100100")s="PPPPPPPPPP";//RRRRRRRRRR
	if(rc=="0000011000")s="SSSSSSSSSS";//PPPPPPPPPP
	if(rc=="0010000010")s="SRPSRPSRPS";//RPSRPSRPSR
	if(rc=="0000110000")s="PSRPSRPSRP";//RRRRPSSPRR
	if(rc=="0000000110")s="SPRSPRSPRS";//RPPPPSRRSP
	for(i=0;i<10;i++)
	{
		cout<<s[i]<<endl;
		cout.flush();
		getline(cin,ai);
	}
	return 0;	
}

到了这里,关于CF1145G AI Takeover 题解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

原文地址:https://blog.csdn.net/yaosichengalpha/article/details/136270572

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • CF961E Tufurama 题解

      给定长度为 (n) 的序列 (a) ,统计二元组 ((i,j)) 的个数,使得该二元组满足 (1 leq i j leq n, a_i geq j, a_j geq i) 。 (n) 在 (2 times 10^{5}) 级别, (a_i) 在 (1 times 10^{9}) 级别。   我们考虑把序列中 (n) 个元素看成 ((i,a_i)) 坐标的点,至于平面直角坐标系中。我们先

    2024年02月08日
    浏览(11)
  • CF1011A Stages 题解

    题目意思: 给你一个长度为 n n n 的字符串 a a a ,在这个字符串中选一个长度为 k k k 的好串(好串标准是啥自己去题目里看吧),问这个好串的最小价值是多少。 思路: 贪心。 首先我们将字符串 a a a 里面的字符进行排序。 因为要最小的价值,所以排好序后的 a a a 的第一个

    2024年02月12日
    浏览(6)
  • CF338D GCD Table 题解

    你有一个长度为 (k) 的数列 (a) , 询问是否存在 (xin[1,n]~~~yin[1,m]) 使得 (forall i~~~ gcd(x,y+i-1)=a_i) 。 我们转换一下可以得到: [forall i ~~left{ begin{matrix}xequiv 0pmod{a_i} \\\\y+i-1equiv 0pmod{a_i}end{matrix}right.] 前面一个 (x) 很好解决,直接 最大公倍数 。 (y) 可以转化一下:

    2024年02月07日
    浏览(7)
  • 洛谷P1249题解

    一个正整数一般可以分为几个互不相同的自然数的和,如 3 = 1 + 2 3=1+2 3 = 1 + 2 , 4 = 1 + 3 4=1+3 4 = 1 + 3 , 5 = 1 + 4 = 2 + 3 5=1+4=2+3 5 = 1 + 4 = 2 + 3 , 6 = 1 + 5 = 2 + 4 6=1+5=2+4 6 = 1 + 5 = 2 + 4 。 现在你的任务是将指定的正整数 n n n 分解成若干个互不相同的自然数的和,且使这些自

    2024年02月05日
    浏览(14)
  • 洛谷 P8742题解

    简单版(P2347)传送门 原题传送门 有一道 类似 的题目(P2347),先扯一扯~ 动态规划入门题(01背包 可行性问题 )~ 我们 设 (dp_j) 为能否用砝码称出 (j) 重量 ,1 为 可以 ,0 为 不可以 。 为了转移, (dp_{_{0}} gets 1) , 什么都不放时,重量为 0 ,因此可以称出。 那么 枚举

    2024年02月06日
    浏览(18)
  • 洛谷AT4888 题解-伦伦数

    A positive integer XX is said to be a lunlun number if and only if the following condition is satisfied: In the base ten representation of XX (without leading zeros), for every pair of two adjacent digits, the absolute difference of those digits is at most 11 . For example, 12341234 , 11 , and 334334 are lunlun numbers, while none of 3141531415 

    2024年02月06日
    浏览(11)
  • CF1178F1 Short Colorful Strip 题解

    题目描述 这是F题的第一个子任务。F1和F2的区别仅在对于m和时间的限制上 有n+1种颜色标号从0到n,我们有一条全部染成颜色0的长为m的纸带。 Alice拿着刷子通过以下的过程来给纸带染色: 我们按照从1到n的顺序进行染色,进行每次染色时,我们选取一个区间[ai,bi],0=aibi=m,并

    2024年02月01日
    浏览(5)
  • CF963B Destruction of a Tree 题解

      洛谷题目链接   这里提供一个较为朴素的 DP 想法。   给定一棵树,节点个数不超过 (2 times 10^5) ,每次可以删掉度数为偶数的点。问最后能不能删完;能删完给出删除方案。   首先可以随便选一个点作为根。   其次,我们考虑在一棵子树的删除情况,我们令

    2024年02月08日
    浏览(10)
  • Codeforces Round 858 (Div. 2)题解

    目录 A. Walking Master(贪心) 题面翻译 思路: 代码实现  B. Mex Master(贪心) 题面翻译: 思路: 代码实现 C. Sequence Master(数学) 题面翻译: 思路: 代码实现 YunQian is standing on an infinite plane with the Cartesian coordinate system on it. In one move, she can move to the diagonally adjacent point on the

    2023年04月08日
    浏览(11)
  • Codeforces Round 889 (Div. 2) 题解

    晚上睡不着就来总结一下叭~(OoO) 终榜!!! 先不放图了。。怕被dalaoHack...呜呜呜~         7.29半夜比赛,本来是不想打的,感觉最近做的题太多了,什么牛客杭电以及CF上的题等等等,挺杂的,也来不及整理,本想梳理一下,而且也感觉今天状态不太好,但见他们都要

    2024年02月15日
    浏览(13)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包