首页 > Alice and Bob
头像 哭晕了
发表于 2021-07-18 17:33:28
A题 Alice and Bob我们知道当面临两堆石头数量为(0,0)时为失败,那么如果能一次操作能取光石头此时为必胜态,我们用一个二维数组f[i][j]来表示第一堆石头数量为i第二堆石头数量为j的情况,f[i][j]=1表示状态面临两堆石头数量为i,j时可以一步取光石头,f[i][j]=0表示状态 展开全文
头像 就离谱怎么还不AC
发表于 2021-07-18 15:14:44
主要是看数据太小了,然后先把所以应该输出B的数据打印到文件中,再cccv即可(如果不是实在找不出规律谁用这个办法呢?doge)打表代码如下: #include <bits/stdc++.h> #define int long long #define il inline #define 展开全文
头像 Tryna
发表于 2021-09-18 22:17:03
I - Increasing Subsequence 思路:直接往期望上面靠。设为前次取第个数字,前前次取第个数字的期望轮数。因为要满足后面的比前面的下标要大,如果从前往后取的话,每次都要找后面的数字中比当前两个数字都大的数字,时间复杂度为,是接受不了的。既然要求每次都要取后面的数字,那么不如从后面 展开全文
头像 Tryna
发表于 2021-09-18 22:13:10
A - Alice and Bob 题意: 给出两堆石子,可以用一堆里取个,然后从另外一堆里取个,先手,最后谁不能取谁输。 题解: 考虑去寻找必败态,比如是必败态,但加上其他数都是必胜态,因为总能全部取完或者转移到,使对方达到必败态。考虑去枚举,如果这两个数不能转移到之前的必败态,那么他也一定是个必 展开全文
头像 Tryna
发表于 2021-09-18 22:15:33
H - Hash Function 题意: 给出个互不相同的数,找一个最小的模数,使得这些数字对这个模数取模的结果互不相同。 题解: % % 转化为 % 问题就转化为找一个,他不是任意一个的约数 问题就来到了如何快速求一个数列中每两个数之间的差,如果暴力是会超时 我们考虑多项式乘法,用指 展开全文
头像 Tryna
发表于 2021-09-18 22:18:06
J - Journey among Railway Stations 题意:个点,每个点的合法时间是,第i个点到下一个点的需要的最短时间为,每次询问从点出发到r点是否合法,或者修改值,、值。 思路: 要从点到点,可以列出式子 在合法情况下,如果到不了,那么就直接取到,否则就取。也就是说,我要在前面 展开全文

等你来战

查看全部