
博弈论
ACkingdom
这个人很懒,什么都没有留下
展开
-
Codeforces Round #658 (Div. 2) B. Sequential Nim(博弈)
题目链接 思路: 简单的博弈论,如果全是1那就看奇偶,如果开头有1那就看最后谁能先拿到不为1谁就赢,因为他能控制下一个人。 代码: #include<bits/stdc++.h> using namespace std; #define int long long #define IOS ios::sync_with_stdio(false);cin.tie(0);cout.tie(0); const int N=1e5+7; const double eps=1e-8; const int m原创 2020-07-24 22:28:22 · 188 阅读 · 0 评论 -
CCPC-2017杭州站 C - Hakase and Nano(博弈论)
题目链接 题意: 给你n堆石子,每堆石子个数>=1,现在有两个人,一个人每次能拿两次,另一个人只能拿一次,如果输入1就两次的人先拿,2就1次的人先拿,求最后的获胜者是谁。 思路: 两次先手:他失败的情况只有一种:石子的个数是3的倍数,且每堆石子的个数必须都是1. 一次先手:如果他想赢,那就必须将当前的局面构造成另一个人失败的情况。即当前局面石头堆的个数为3的倍数加1且石子数为1的堆数>=总的石子数-1,或者是当前局面石头堆的个数为3的倍数且石子数为1的堆数=总的石子数-1。 代码: #inclu原创 2020-06-23 20:50:49 · 416 阅读 · 0 评论