Loading

上一页 1 ··· 29 30 31 32 33 34 35 36 37 ··· 40 下一页
摘要: 你在起点面对n扇门,每次等概率的选择一扇门,若这扇门是数字,花费Xi直接到达终点否则花费Xi回到起点。 这题很有思考价值。 设期望时间为E。 有E = 1/n * (Xi ) + 1/n * (E + Xi) 最后求解E即可。 ll gcd(ll a, ll b) { return b == 0 ? 阅读全文
posted @ 2020-07-04 18:25 MQFLLY 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 回忆 HDU 4135 经典题 Co-Prime 求[a,b]区间与给定素数p互质的个数。 将p质因数分解后容斥即可。 原理就是质因数的倍数就是与p不互素的数。 此题的写法: ll p[maxn]; int cnt; ll n; void init(ll m) { for (int i = 2; i 阅读全文
posted @ 2020-07-03 23:31 MQFLLY 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 若能根据关系 推出转移矩阵 就是简单题 然而这需要多做题的经验 ll Ax, Ay, A0, B0 ,Bx,By; struct Mat { ll m[5][5]; }; Mat E; Mat P; void init() { for (int i = 0; i < 5; i++) E.m[i][i 阅读全文
posted @ 2020-07-03 15:54 MQFLLY 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 给出一个整数N 每次可以在不超过N的素数中随机选择以个P, 如果P是N的约数,则把N变成N/P ,否则N不变 。 问平均状况下需要多少次随机选择才能把N变为1 ? N<=1e6 int prime[maxn]; int vis[maxn]; double f[maxn]; int euler_sie 阅读全文
posted @ 2020-07-02 21:56 MQFLLY 阅读(155) 评论(0) 推荐(0) 编辑
摘要: ll quickPower(ll a, ll b, ll m) { ll ans = 1; ll base = a; while (b) { if (b & 1) ans *= base, ans %= m; base *= base; base %= m; b >>= 1; } return an 阅读全文
posted @ 2020-07-02 19:44 MQFLLY 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 给定N,A,B N个盒子,A个红球,B个蓝球 。 可以随便放进盒子里。(可以不放) 问有几种放法。 放法 = A的方法 * B的放法 A 的放法 = C(N,1) + C(N+1,2) +..... B的放法同理 注意开ull long long C[40][40]; void get_C(int 阅读全文
posted @ 2020-07-02 18:06 MQFLLY 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 注意到 n名同学 n<=1000 m个询问 m<=1000 因此思路可以是: 将n名同学的信息存储在一个数组中,对于每个询问,向这个数组查找这名同学。 至于题目要求的“”他们与第一名相差多少名次“ 实际上就是前面有几个人比他分数高。 于是相当于循环里面套两个循环。 请注意读入字符串的时候读入了”:“ 阅读全文
posted @ 2020-07-01 18:58 MQFLLY 阅读(845) 评论(0) 推荐(0) 编辑
摘要: int prime[maxn], prime_tot; int is_prime[maxn]; int mu[maxn]; void pre_calc(int lim) { mu[1] = 1; for (int i = 2; i <= lim; i++) { if (!is_prime[i]) { 阅读全文
posted @ 2020-06-30 19:25 MQFLLY 阅读(214) 评论(0) 推荐(0) 编辑
摘要: A: 给出 x,y 求出最大的 k , 0<=k<=n 且 k mod x = y 直接公式表达出来就好了 int main() { int T; scanf("%d", &T); ll k, x, y, n; while (T--) { scanf("%lld%lld%lld", &x, &y, 阅读全文
posted @ 2020-06-29 21:30 MQFLLY 阅读(345) 评论(0) 推荐(0) 编辑
摘要: C:给两个栈,每次只能取栈顶元素,取完后自动pop 问能取到最多几个元素 栈中元素之和必须小于等于K 官方题解给出的做法是O(N+M) 受上一场CF启发,此题可以很自然联想到二分做法。 二分答案,答案显然具有单调性。check函数只需遍历一遍可能情况 复杂度O((N+M)logX) int n, m 阅读全文
posted @ 2020-06-28 14:29 MQFLLY 阅读(253) 评论(0) 推荐(0) 编辑
上一页 1 ··· 29 30 31 32 33 34 35 36 37 ··· 40 下一页