P2300 合并神犇】的更多相关文章

P2300 合并神犇 题目背景 loidc来到了NOI的赛场上,他在那里看到了好多神犇. 题目描述 神犇们现在正排成一排在刷题.每个神犇都有一个能力值p[i].loidc认为坐在附近的金牌爷能力参差不齐非常难受.于是loidc便想方设法对神犇们进行人道主义合并. loidc想把神犇的能力值排列成从左到右单调不减.他每次可以选择一个神犇,把他合并到两侧相邻的神犇上.合并后的新神犇能力值是以前两位犇的能力值之和.每次合并完成后,被合并的两个神犇就会消失.合并后的新神犇不能再分开(万一他俩有女朋友咋办…
题目背景 loidc来到了NOI的赛场上,他在那里看到了好多神犇. 题目描述 神犇们现在正排成一排在刷题.每个神犇都有一个能力值p[i].loidc认为坐在附近的金牌爷能力参差不齐非常难受.于是loidc便想方设法对神犇们进行人道主义合并. loidc想把神犇的能力值排列成从左到右单调不减.他每次可以选择一个神犇,把他合并到两侧相邻的神犇上.合并后的新神犇能力值是以前两位犇的能力值之和.每次合并完成后,被合并的两个神犇就会消失.合并后的新神犇不能再分开(万一他俩有女朋友咋办)因此每次合并后神犇的…
传送门啦 分析: 刚开始读完题后感觉很懵,怎么算都不是3,结果发现题目理解错了.题目要求的是求一个不降的序列,不是递减的(发现自己好傻) 看明白题就好做了吧.经典的区间dp题,合并果子大家应该都做过,那个题求一个代价,这个题换成合并次数了,也差不多. 本题要使一段序列合并成不下降序列,因为只能合并相邻的两个数,所以合并后的一个数必定是由原版序列中的一段进行数次合并得到的.考虑简单的贪心思路,对于第一个数,每次不停加入一个数直到它们的和大于第一个数停止,继续此操作,直到结束,但是这样显然是错误的,…
题目链接 题意分析 首先这道题不可以使用简单的贪心来做 根据\(DP\) 我们令\(dp[i]\)表示当前到了\(i\)一共做了\(dp[i]\)次合并 \(pre[i]\)表示当前合并到了\(i\)后序列末尾的数 那么\[dp[i]=min\{dp[j]+i-j,sum[i]-sum[j]≥pre[j]\}\] 可惜是\(O(n^2)\)的 我们考虑由于是\(dp[i]=dp[j]+val_i\)的形式 所以我们可以使用单调队列优化 \[sum[i]≥sum[j]+pre[j]\] 根据贪心法…
洛谷 听说这题可以\(n^2\)水过去,不过这里介绍一种\(O(n)\)的做法. \(f[i]\)为第\(1-i\)位合并的次数. \(pre[i]\)为第\(1-i\)位最末尾的数. \(j\)为满足\(sum[i]−sum[j]>=pre[j]\)的最大数. 所以很好推出: \(f[i]=f[j]+i−j−1~~~~~pre[i]=sum[i]−sum[j]\) 显然\(pre[i]\)越小越好,这样找到一个就可以退出. 所以可以直接用单调队列优化. 时间复杂度\(O(n)\). 代码,注意…
[Luogu2600]合并神犇 题目背景 loidc来到了NOI的赛场上,他在那里看到了好多神犇. 题目描述 神犇们现在正排成一排在刷题.每个神犇都有一个能力值p[i].loidc认为坐在附近的金牌爷能力参差不齐非常难受.于是loidc便想方设法对神犇们进行人道主义合并. loidc想把神犇的能力值排列成从左到右单调不减.他每次可以选择一个神犇,把他合并到两侧相邻的神犇上.合并后的新神犇能力值是以前两位犇的能力值之和.每次合并完成后,被合并的两个神犇就会消失.合并后的新神犇不能再分开(万一他俩有…
[BZOJ4916]神犇和蒟蒻(杜教筛) 题面 BZOJ 求 \[\sum_{i=1}^n\mu(i^2)\ \ 和\ \sum_{i=1}^n\phi(i^2)\] 其中\[n<=10^9\] 题解 第一问 搞笑的 不会做? 算了.. 还是说一下: 想想\(\mu(x)\)是怎么算的??? 既然是\(i^2\),每个因数的个数一定不会是\(1\) 所以除了\(\mu(1)\)外一定都是\(0\) 所以第一问的答案一定是\(1\) 第二问: 先看看要求的是什么 \(\phi(i^2)=i*\ph…
Description 很久很久以前,有一只神犇叫yzy; 很久很久之后,有一只蒟蒻叫lty; Input 请你读入一个整数N;1<=N<=1E9,A.B模1E9+7; Output 请你输出一个整数 $A=\sum_{i=1}^N{\mu (i^2)}$ ; 请你输出一个整数 $B=\sum_{i=1}^N{\varphi (i^2)}$ ; Sample Input 1 Sample Output 1 1 题解 首先注意到 $A$ 直接输出 $1$ 得满分.因为只有 $\mu(1^2)=1…
Description 很久很久以前,有一只神犇叫yzy; 很久很久之后,有一只蒟蒻叫lty; Input 请你读入一个整数N;1<=N<=1E9,A.B模1E9+7; Output 请你输出一个整数A=\sum_{i=1}^N{\mu (i^2)}; 请你输出一个整数B=\sum_{i=1}^N{\varphi (i^2)}; Sample Input 1 Sample Output 1 1 Solution 完全不知道第一问是用来干嘛的....反正都是1 第二问,显然,\(\varphi(…
Description 很久很久以前,有一只神犇叫yzy; 很久很久之后,有一只蒟蒻叫lty; Input 请你读入一个整数N;1<=N<=1E9,A.B模1E9+7; Output 请你输出一个整数A=\sum_{i=1}^N{\mu (i^2)}; 请你输出一个整数B=\sum_{i=1}^N{\varphi (i^2)}; Sample Input 1 Sample Output 1 1 思路 首先发现第一个一定是1.... 然后发现第二个其实可以表示成 \[ \sum_{i = 1}^…
[BZOJ4916]神犇和蒟蒻 Description 很久很久以前,有一群神犇叫sk和ypl和ssr和hjh和hgr和gjs和yay和xj和zwl和dcx和lyy和dtz和hy和xfz和myh和yww和zjt; 很久很久之后,有一只蒟蒻叫ypl,被神犇myh的做题记录碾在地上; Input ​ 请你读入一个整\(N\); Output ​ 请你输出一个整数\(A=\sum_{i=1}^n\mu(i^2);(\bmod1000000007)\) ​ 请你输出一个整数\(B=\sum_{i=1}^…
题目 很久很久以前,有一只神犇叫yzy; 很久很久之后,有一只蒟蒻叫lty; 输入格式 请你读入一个整数N;1<=N<=1E9,A.B模1E9+7; 输出格式 请你输出一个整数A=\sum_{i=1}^N{\mu (i^2)}; 请你输出一个整数B=\sum_{i=1}^N{\varphi (i^2)}; 输入样例 1 输出样例 1 1 题解 首先很明显= = \[ans1 = 1\] 然后重点是\(ans2\) 我们会发现这样一个性质: \[\varphi(i^2) = i*\varphi(…
很久很久以前,有一只神犇叫Monster_Qi; 很久很久之后,有一只蒟蒻叫SWHsz; 1<=N<=1E9,A.B模1E9+7; 求这个. 求μ的话直接输出1就行了因为除了1的平方外都有平方因子. 求φ的话就有个显而易见的结论就是\(φ(n^2)=φ(n)n\),列出φ的一般式就行了. 然后就是套杜教筛的模板了. 要凑 \(f \cdot g=h\) $ h(i)=\sum _{d|i} φ(d)dg(i/d) $ 显而易见的,g是\(id\)函数,\(h(i)=i^2\) 然后随便搞了.…
P4213 [模板]杜教筛(Sum) 题目描述 给定一个正整数$N(N\le2^{31}-1)$ 求 $$ans_1=\sum_{i=1}^n\varphi(i)$$ $$ans_2=\sum_{i=1}^n \mu(i)$$ 输入输出格式 输入格式: 一共T+1行 第1行为数据组数T(T<=10) 第2~T+1行每行一个非负整数N,代表一组询问 输出格式: 一共T行,每行两个用空格分隔的数ans1,ans2 输入输出样例 输入样例#1: 复制 6 1 2 8 13 30 2333 输出样例#1…
神犇 DPH 让我写博客.但是,似乎我已经开始写了?!! I am young and naïve!!! Let us orz DPH! 上节课讲DFS,这个是我最擅长的.“暴力出奇迹”!…
题面 Description 很久很久以前,有一只神犇叫yzy; 很久很久之后,有一只蒟蒻叫lty; Input 请你读入一个整数N;\(1<=N<=10^9\),A.B模\(10^9+7​\); Output 请你输出一个整数\(A=\sum_{i=1}^N{\mu (i^2)}\); 请你输出一个整数\(B=\sum_{i=1}^N{\varphi (i^2)}\); Sample Input 1 Sample Output 1 1 题目分析 第一问: 根据定义,答案永远等于\(1\).…
[问题描述] 传说中有位神犇,因其一贯低调,所以人们连他活了多少岁都不知道. 好在XXXX文献上有段关于他生平细节的文字:神犇一生中, 幼年占了1/6,又过了1/12的青春期,又谈了1/6的恋爱后结婚, 婚后m年生了个孩子,名叫神牛,神牛比神犇先死n年,神牛的寿命是神犇的一半. 请你帮忙算出这位神犇活了多少岁. [输入] 多组数据,每组数据占一行,输入m,n,意思为题目所描述的.(0 < n , m <= 100) [输出] 每组数据输出一行,包含一个整数(表示神犇的年龄) [样例输入] 50…
/* 这大概是我第一次整理模拟赛吧. 唉. T2打了很长时间. 一开始读错题了中间都能缩合了. 真心对不起生物老师hhh. 这种状态判重的题目还是做的太少! */ 背单词 [题目描述] fqk 退役后开始补习文化课啦, 于是他打开了英语必修一开始背单词. 看着满篇的单词非常头疼, 而每次按照相同的顺序背效果并不好,于是 fqk 想了一种背单词的好方法!他把单词抄写到一个 n 行 m 列的表格里,然后每天背一行或者背一列.他的复习计划一共有 k 天,在k 天后, fqk 想知道,这个表格中的每个单…
KMP字符串匹配算法: http://kb.cnblogs.com/page/176818/ http://blog.csdn.net/yutianzuijin/article/details/11954939 数论:二次同余方程解法: http://blog.csdn.net/acdreamers/article/details/10182281 图论:二分图匹配匈牙利算法: http://blog.csdn.net/acdreamers/article/details/8621130 htt…
开始更新咯 DP专题[题目来源BZOJ] 一.树形DP 1.bzoj2286消耗战 题解:因为是树形结构,一个点与根节点不联通,删一条边即可, 于是我们就可以简化这棵树,把有用的信息建立一颗虚树,然后开始DP即可 /* 思路: */ #include<algorithm> #include<cstdio> #include<cmath> #include<iostream> #include<cstring> #define ll long lo…
题面 传送门 Sol 第一问puts("1") 第二问,\(\varphi(i^2)=i\varphi(i)\) 设\(\phi(n)=\sum_{i=1}^{n}i\varphi(i)\)根据杜教筛推的式子 \[g(1)\phi(n)=\sum_{i=1}^{n}\sum_{d|i}g(d)(\frac{i}{d})\varphi(\frac{i}{d})-\sum_{i=2}^{n}g(d)\phi(\lfloor\frac{n}{d}\rfloor)\] 设\(g(i)=i\)减…
题目大意: 读入n. 第一行输出“1”(不带引号). 第二行输出$\sum_{i=1}^n i\phi(i)$. 题解: 所以说那个$\sum\mu$是在开玩笑么=.= 设$f(n)=n\phi(n),F(n)=\sum_{i=1}^{n}f(i)$. 设$g=(f*id)$,则$g(n)=\sum_{d|n}id(\frac{n}{d})f(d)=n^2$. 设$G(n)=\sum_{i=1}^n g(i)=\frac{n(n+1)(2n+1)}{6}$. 同时将$G$完全展开我们得到: $G…
题意 求 $$\sum_{i = 1}^n \mu(i^2)$$ $$\sum_{i = 1}^n \phi(i^2)$$ $n \leqslant 10^9$ Sol zz的我看第一问看了10min. 感觉自己智商被侮辱了qwq 基础太垃圾qwq. 算了正经点吧,第一问答案肯定是$1$,还不明白的重学反演吧. 第二问其实也不难 定理: $\phi(i^2) = i\phi(i)$ $\sum_{d | n} \phi(d) = n$ 显然$i$ 考虑杜教筛的套路式子 $$g(1)s(n) =…
传送门 (我这个蒟蒻只是mark一下 这个LaTex公式很全!!我是照着打数学公式的!! orz大佬Iowa…
题目传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=4916 第一个询问即求出$\sum_{i=1}^{n} { \mu (i^2)} $,考虑到$\mu$的定义,当i>1时必存在次数为偶数的质因子,故在数据范围内,$\sum_{i=1}^{n} { \mu (i^2)} $恒等于1. 第二个询问即求出$\sum_{i=1}^{n} { \varphi  (i^2)} $,考虑到$\varphi$的定义,则有$\varphi(i^2)=i\…
第一问是来搞笑的.由欧拉函数的计算公式容易发现φ(i2)=iφ(i).那么可以发现φ(n2)*id(n)(此处为卷积)=Σd*φ(d)*(n/d)=nΣφ(d)=n2 .这样就有了杜教筛所要求的容易算前缀和的两个函数.一通套路即可. #include<iostream> #include<cstdio> #include<cmath> #include<cstdlib> #include<cstring> #include<algorith…
题目大意: 给定\(n\le 10^9\),求: 1.\(\sum_{i=1}^n\mu(i^2)\) 2.\(\sum_{i=1}^n\varphi(i^2)\) 解释 1.\(\sum_{i=1}^n\mu(i^2)\) 直接输出1 因为对于\(\forall i>1\)有\(\mu (i^2)=0\) 2.\(\sum_{i=1}^n\varphi(i^2)\) for 杜教筛: 构造函数\(f(i)=\varphi(i^2)\),则有\(f*\mathrm{id}=id^2\),具体推导…
设最优策略为第一步向左走 那么肯定是走到最左边最优 需要补一些步数 一种是最右边的连着选,多出一倍代价 一种是不连着选,多出两倍代价 #include<cstdio> #include<algorithm> #include<cstring> using namespace std; int cnt,n,lim,s,root,sz[10000005],a[1000005],ls[10000005],rs[10000005]; long long ans,tr[10000…
[问题描述] 学校要进行合唱比赛了,于是班主任小刘准备给大家排个队形. 他首先尝试排成m1行,发现最后多出来a1个同学:接着他尝试排成m2行,发现最后多出来a2个同学,……,他尝试了n种排队方案,但每次都不能让同学们正好排成mi行.于是小刘寻求同事小明的帮助,以便给同学们排好队形.但小刘来去太匆忙,忘记告诉小明他们班有多少人了.没办法,现在只能根据上述信息求个满足要求的最小的数字来作为人数了. 虽然小明年轻时是理科生,但是他不愿意去思考这个问题:于是他找到了善于编程的你,希望你能通过编程来解决.…
[题目描述] 码农有一块超新星屏幕,它有N个像素点,每个像素点有亮度和灰度两个参数,记为I和H, 范围都是0~32000. 一天,码农突发奇想,想知道哪个点比较容易亮瞎眼睛.为此,他定义了一个瞎眼指数: 瞎眼指数就是灰度和亮度均不大于该像素点的像素个数. 现在,码农希望知道,瞎眼指数为0~N-1的像素点分别有多少个 [输入格式] 第一行一个数字N,代表有N个像素点.接下来N行,每行两个数字,代表该像素点的亮度和灰度. N个像素的亮度和灰度.像素按照灰度从小到大的顺序给出,(0 <= I, H <…