[题解](数学)BZOJ_1257_余数求和】的更多相关文章

来源:https://blog.csdn.net/loi_dqs/article/details/50522975 并不知道为什么是sqrt(n)的段数......书上写的看不懂...... 但是这个思路好难想(打表大法好 不开longlong一时爽,一会提交火葬场!!! OI千万条,longlong第一条 乘法不longlong,提交两行泪 #include<cstring> #include<cstdio> #include<iostream> #include&l…
大家都说这题水然而我好像还是调了有一会儿……不过暴力真的很良心,裸的暴力竟然还有60分. 打一张表出来,就会发现数据好像哪里有规律的样子,再仔细看一看,就会发现k/3~k/2为公差为2的等差数列,k/2~之后为公差为1的等差数列,于是我们就可以利用高斯求和快速求解啦.自认为代码是能够看得的... #include <bits/stdc++.h> using namespace std; #define LL long long #define int long long LL ans; , n…
P2261[[CQOI2007]余数求和] 蒟蒻终于不看题解写出了一个很水的蓝题,然而题解不能交了 虽然还看了一下自己之前的博客 题目要求: \[\sum_{i=1}^{n}{k \bmod i} \] 做些变化 \[\sum_{i=1}^{\min(n,k)}{k-\lfloor \frac{k}{i} \rfloor}\times i \] \[n\times k-\sum_{i=1}^{\min(n,k)}{\lfloor \frac{k}{i}\rfloor \times i} \] 按…
上模板题例题: [CQOI2007]余数求和 洛谷 BZOJ 题目大意:求 $\sum^n_{i=1}k\ mod\ i$ 的值. 等等……这题就学了三天C++的都会吧? $1\leq n,k\leq 10^9$.(一口老血喷到屏幕上) $O(n)$ 行不通了,考虑别的做法. 我们来看一下 $\lfloor\frac{x}{i}\rfloor$ 的值. $x=9$:(不包括0,只有4种取值?) i 1 2 3 4 5 6 7 8 9 10 x/i 9 4 3 2 1 1 1 1 1 0 $x=1…
洛谷题目链接:[CQOI2007]余数求和 题目背景 数学题,无背景 题目描述 给出正整数n和k,计算G(n, k)=k mod 1 + k mod 2 + k mod 3 + - + k mod n的值,其中k mod i表示k除以i的余数.例如G(10, 5)=5 mod 1 + 5 mod 2 + 5 mod 3 + 5 mod 4 + 5 mod 5 -- + 5 mod 10=0+1+2+1+0+5+5+5+5+5=29 输入输出格式 输入格式: 两个整数n k 输出格式: 答案 输入…
题目传送门 余数求和 题目背景 数学题,无背景 题目描述 给出正整数n和k,计算G(n, k)=k mod 1 + k mod 2 + k mod 3 + … + k mod n的值,其中k mod i表示k除以i的余数.例如G(10, 5)=5 mod 1 + 5 mod 2 + 5 mod 3 + 5 mod 4 + 5 mod 5 …… + 5 mod 10=0+1+2+1+0+5+5+5+5+5=29 输入输出格式 输入格式: 两个整数n k 输出格式: 答案 输入输出样例 输入样例#1…
P2261 [CQOI2007]余数求和 题意: 求\(G(n,k)=\sum_{i=1}^n k \ mod \ i\) 数据范围: \(1 \le n,k \le 10^9\) \(G(n,k)\) \(=\sum_{i=1}^n k-i*\lfloor \frac{k}{i} \rfloor\) \(=n*k-\sum_{i=1}^n i*\lfloor \frac{k}{i} \rfloor\) 显然,\(\lfloor \frac{k}{i} \rfloor\)的分布可能会有重复. 根…
[Luogu 2261] CQOI2007 余数求和 这一定是我迄今为止见过最短小精悍的省选题了,核心代码 \(4\) 行,总代码 \(12\) 行,堪比小凯的疑惑啊. 这题一看暴力很好打,然而 \(10^{9}\) 的范围注定会卡掉暴力. 所以我们要用除法分块来优化. 由题意得:\(ans = \sum_{i=1}^{n} k \bmod i\) 我们知道,\(a \bmod b = a - b \times \lfloor \frac{a}{b} \rfloor\) 因此,\(ans = \…
P2261 [CQOI2007]余数求和 关键在于化简公式,题目所求$\sum_{i=1}^{n}k\mod i$ 简化式子,也就是$\sum_{i=1}^{n}(k-\frac{k}{i}\times k)$ $=n*k-\sum_{i=1}^{n}\frac{k}{i}\times k$ $⌊ \frac{m}{k}⌋$ 共有 $O( √ m)$ 种取值,直接计算.总时间复杂度 $O( √ m)$ 观察下图: 你会发现$\frac{k}{i}$是有规律的,或者说相同的紧挨着,分布在同一个块中…
题面 传送门:https://www.luogu.org/problemnew/show/P2261 Solution 这题显然有一个O(n)的直接计算法,60分到手. 接下来我们就可以拿出草稿纸推一推式子了 首先,取模运算在这里很不和谐,我们得转换一下. 对于任意取模计算,我们都有: 所以,我们可以做以下推算 经过一些手算,我们发现k/i(向下取整)是由一段一段的区间组成的,如下图 显然,每段区间的右端点可以通过二分的方法来找 对于每一段区间,我们可以把k/i提出来,括号里面就变成了(i+(i…