Codeforces 830C Bamboo Partition 其他】的更多相关文章

Bamboo Partition 列公式, 整除分块, 想不到, 好菜啊. #include<bits/stdc++.h> #define LL long long #define fi first #define se second #define mk make_pair #define PLL pair<LL, LL> #define PLI pair<LL, int> #define PII pair<int, int> #define SZ(x)…
原文链接https://www.cnblogs.com/zhouzhendong/p/CF830C.html 题解 把问题转化成求最大的 $d$ ,满足$$\sum_{1\leq i \leq n}(\lceil a_i / d\rceil \times d - a_i )\leq k$$移项$$(d\sum_{1\leq i \leq n } \lceil a_i / d \rceil )\leq k + \sum_{1\leq i \leq n} a_i$$于是可能的 $d$ 就只可能有 $…
[CF830C]Bamboo Partition 题解:给你n个数a1,a2...an和k,求最大的d使得$\sum\limits_{i=1}^n((d-a[i] \% d) \% d) \le k$ n<=100,a[i]<=10^9,k<=10^11 题解:$\sum\limits_{i=1}^n((d-a[i] \% d) \% d)=d\sum\limits_{i=1}^n{\lceil {a[i]\over d}\rceil }-\sum\limits_{i=1}^na[i]$…
题目要求符合以下条件的最大的d 化简得 注意到 最多只有2*sqrt(a[i]-1)种取值,也就是一共最多有n*sqrt(10^19)种取值,于是枚举一下d,计算出符合上上式的最大的d更新答案,然后d跳跃到下一个取值 效率O(n²sqrt(10^9)) #include<bits/stdc++.h> #define ll long long using namespace std; ,inf=1e9; ll n,k,ans,r; ll a[maxn]; void read(ll &k)…
题目传送门 通往???的传送点 通往神秘地带的传送点 通往未知地带的传送点 题目大意 给定一个串$s$,要求将$s$划分为$t_{1}t_{2}\cdots t_{k}$,其中$2\mid k$,且$t_{i} = t_{k - i}$,问方案数. 直接做不太好做.虽然可以$O(n^{2})$进行动态规划. 考虑做一步转化:设$s' = s_{1}s_{n}s_{2}s_{n - 1}\cdots s_{n / 2}s_{n / 2 + 1}$. 然后它的一个偶回文划分可以和原来的划分一一对应.…
随便写写,然后写D的题解. A. Partition   time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output You are given a sequence a consisting of n integers. You may partition this sequence into two sequences b and c …
Codeforces 题面传送门 & 洛谷题面传送门 学 whk 时比较无聊开了道题做做发现是道神题( 介绍一种不太一样的做法,不观察出决策单调性也可以做. 首先一个很 trivial 的 observation 是,如果 \(2^{k-1}>n\)​ 那么答案就是 \(n\)​,因为我们可以第 \(i\) 段放 \(2^{i-1}\) 个数(最后一段除外),这样每一段中,肯定只有形如 \((x,x)\) 的整数对会产生贡献,这样答案刚好取到下界 \(n\). 我们设 \(dp_{i,j}\…
题意:给你n个数,问有多少种排列方式使得任意两个相邻的数的乘积都不是完全平方数 我好弱,被组合和数论吊着打... 首先我们可以把每个数中固有的完全平方数给分离出来,那么答案其实就只与处理后的序列相关. 考虑把相同的数分为一类,设dp[i][k]表示前i组数分为k类的方案数,于是用隔板法搞搞就有: $dp[i][j]=\sum_{k=1}^{j}{dp[i][j-k]}C^{k-1}_{n_{i}-1}*\frac{n_{i}!}{k!}$ 根据容斥原理,最终的答案就是: $ans=dp[n]n!…
题意:给定一个串,把串分为偶数段 假设分为$s_1,s_2,s_3....s_k$ 求满足$ s_1=s_k,s_2=s_{ k-1 }... $的方案数模$10^9+7$ $|S|\leq 10^6$ 首先想到将原串变为$s_1 s_n s_2 s_{n-2}...$ 这样问题变成了求将新串分成任意个偶数长度回文串的方案数 对于这个问题,我们先给出两个结论 $1.$一个回文串S的后缀$T$如果是回文串等价于$T$是$S$的$border $ $2.$将一个串$S$的所有$borde$r按长度从…
[pixiv] https://www.pixiv.net/member_illust.php?mode=medium&illust_id=60638239 description 有n棵竹子,初始时每棵竹子高度都是0,每棵竹子每天长高1m 对于每棵竹子,我们不希望其高度超过a[i],如果超过了,我们就会把超过的部分减去 奇怪的是减去之后竹子就不会再长了 我们不希望每天去看一下竹子的情况,希望每隔d天去看一下竹子的情况 本着爱护环境的原则,我们不希望减去的竹子长度之和大于K 我们最多可以隔多少天…