
数论
璇玑你没有心
这个作者很懒,什么都没留下…
展开
-
D. Shuffle(cf)暴力枚举 + 组合数学
原题链接:Problem - 1622D - Codeforces题目大意:给你一串01串,告诉你长度n和一个数k,这个串中所有1的数量为k的子串,可以把这段子串重新排序。问你最后这个串能有多少种。思路:看第一个案例就知道会有重复的情况,但是区间重复不好算,又因为n为5000, n * n能跑,所以暴力枚举i, j(j > i,因为区间为一个长度的时候它跟谁换呢,换不了)作为第一个改变的地方和最后一个改变的地方。如果i ~ j区间1的数量<= k,就可以进行这样的操作。因为i和j下标的原创 2022-04-04 09:26:15 · 469 阅读 · 2 评论 -
D. Rescue Nibel(cf) 区间覆盖 + 组合数学
原题链接:Problem - 1420D - Codeforces题目大意:给你n个灯,和每个等的亮的时间段,问你有多少种可以有k个灯一起亮的种数(如果k = 3而且灯 1 2 3在几个时间点都可以一起亮,只算一种。思路:用区间覆盖,{l, 1} {r + 1, -1},然后sort,维护时间点内灯的个数。每加进来一个等的时候,种数即为现在一定要这个灯,然后在剩下的灯中(维护的这个时间有的灯)选出k - 1个即为组合数,而且不会重复。AC代码:#include<bits/s.原创 2022-03-31 20:41:24 · 407 阅读 · 0 评论 -
F 小红的375(牛客)思维、数论
题目描述小红拿到了一个正整数。她希望你能重排这个正整数的数位,使得它能被 375 整除。你能帮帮她吗?a[]用来统计每一个数字出现的字数,在后面输出数的时候也有很重要的作用解释都在代码里:#include<bits/stdc++.h>using namespace std;#define INF 0x3f3f3f3ftypedef pair<int, int> PII;const double pi = acos(-1.0);#define rep..原创 2022-02-24 17:13:39 · 998 阅读 · 0 评论