摘要:
题目大意:已知a,b,c,求满足ax+by=c (x>=0,y>=0)的(x+y)最大值与最小值与解的个数。直接exgcd,求出x,y分别为最小正整数的解,然后一算就出来啦#include#include#define ll long longusing namesp... 阅读全文
摘要:
题意很好理解,求给出图反图的联通块个数。考虑这样一个事情:一个联通块里的点,最多只会被遍历一次,再遍历时没有任何意义所以用链表来存,每遍历到一个点就将该点删掉#include#include#include#include#includeusing namespace... 阅读全文
摘要:
考试只筛到了30分,正解dfs......对于任意N=P1^a1*P2^a2*......*Pn^an,F(N)=(P1^0+P1^1+...+P1^a1)(P2^0+P2^1+...+P2^a2)*...*(Pn^0+Pn^1+...+Pn^an)从小到大枚举素数P... 阅读全文
摘要:
正解lct,然而本蒟蒻并不会....分块思路很清晰,处理出每个点弹出所在块所需要的步数及出去后的第一个位置#include#include#include#include#define N 200005using namespace std;int n,m,nn,k[... 阅读全文
摘要:
因为每次选择都是有后效性的,直接dp肯定不行,所以需要逆推。f[i][j]表示从第i次开始,初始状态为j的期望收益#include#include#includeusing namespace std;int bit[18],K,n,aa,ned[18],a[18];... 阅读全文
摘要:
对于这种看起来就比较傻逼麻烦的题,最关键的就是想怎么巧妙的设置状态数组,使转移尽可能的简洁。一开始我想的是f[i][j]表示到第j轮第i张牌还没有被选的概率,后来发现转移起来特别坑爹,还会有重的或漏的情况。于是改变想法:f[i][j]表示考虑到前i张牌,还剩j轮的概率... 阅读全文