【BZOJ 1257】[CQOI2007]余数之和
【链接】  我是链接,点我呀:) 
 【题意】
在这里输入题意
【题解】
k%i=k-(k/i)*i
则∑k%i = n*k-∑(k/i)*i
因为k/i是整除运算。
所以会有某一段连续的i,它们的k/i的值都是相同的
那么 这一段连续的i用等差数列求和公式O(1)搞一下就好。
(然后i可以直接跳到上界+1
复杂度是根号N级别的。
连续一段的上界注意不要超过n.
超过n就赋值为n就好
【代码】
#include <cstdio>
#include <algorithm>
#define ll long long
using namespace std;
ll n,k,ans;
int main()
{
    scanf("%lld%lld",&n,&k);
    ans = n*k;
    if (n > k) n = k;
    ll up = 0;
    for (int i = 1;i <= n;i = up+1){
        ll temp = k/i;
        up = k/temp;
        if (up>=n) up = n;
        //(i,i+1,i+2...up)*temp
        ans-=1LL*(i+up)*(up-i+1)/2*temp;
    }
    printf("%lld\n",ans);
    return 0;
}
												
											【BZOJ 1257】[CQOI2007]余数之和的更多相关文章
- Bzoj 1257 [CQOI2007]余数之和 (整除分块)
		
Bzoj 1257 [CQOI2007]余数之和 (整除分块) 题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=1257 一道简单题. 题目 ...
 - BZOJ 1257: [CQOI2007]余数之和sum
		
1257: [CQOI2007]余数之和sum Time Limit: 5 Sec Memory Limit: 162 MBSubmit: 3769 Solved: 1734[Submit][St ...
 - bzoj 1257: [CQOI2007]余数之和sum 数学 && 枚举
		
1257: [CQOI2007]余数之和sum Time Limit: 5 Sec Memory Limit: 162 MBSubmit: 1779 Solved: 823[Submit][Sta ...
 - BZOJ 1257: [CQOI2007]余数之和sum( 数论 )
		
n >= k 部分对答案的贡献为 k * (n - k) n < k 部分贡献为 ∑ (k - ⌊k / i⌋ * i) = ∑ , ⌊k / i⌋ 相等的数是连续的一段, 此时这段连 ...
 - BZOJ 1257: [CQOI2007]余数之和sum【神奇的做法,思维题】
		
1257: [CQOI2007]余数之和sum Time Limit: 5 Sec Memory Limit: 162 MBSubmit: 4474 Solved: 2083[Submit][St ...
 - BZOJ 1257: [CQOI2007]余数之和
		
1257: [CQOI2007]余数之和 Time Limit: 5 Sec Memory Limit: 128 MB Description 给出正整数n和k,计算j(n, k)=k mod 1 ...
 - [原博客] BZOJ 1257 [CQOI2007] 余数之和
		
题目链接题意: 给定n,k,求 ∑(k mod i) {1<=i<=n} 其中 n,k<=10^9. 即 k mod 1 + k mod 2 + k mod 3 + … + k mo ...
 - [BZOJ 1257] [CQOI2007] 余数之和sum 【数学】
		
题目链接:BZOJ - 1257 题目分析 首先, a % b = a - (a/b) * b,那么答案就是 sigma(k % i) = n * k - sigma(k / i) * i ( ...
 - bzoj 1257: [CQOI2007]余数之和 (数学+分块)
		
Description 给出正整数n和k,计算j(n, k)=k mod 1 + k mod 2 + k mod 3 + … + k mod n的值 其中k mod i表示k除以i的余数. 例如j(5 ...
 - bzoj 1257 [CQOI2007]余数之和——数论分块
		
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1257 \( n\%i = n - \left \lfloor n/i \right \rfl ...
 
随机推荐
- java中的string trim具体有什么用处。。。
			
去掉字符串首尾空格 防止不必要的空格导致错误public class test{ public static void main(String[] args) { String str = " ...
 - [中文] 以太坊(Ethereum )白皮书
			
以太坊(Ethereum ):下一代智能合约和去中心化应用平台 翻译|巨蟹 .少平 译者注|中文读者可以到以太坊爱好者社区(www.ethfans.org)获取最新的以太坊信息. 当中本聪在2009年 ...
 - NOIP2018提高组金牌训练营——数论专题
			
地址 https://www.51nod.com/live/liveDescription.html#!liveId=23 1187 寻找分数 给出 a,b,c,d, 找一个分数p/q,使得a/b & ...
 - Expressjs配置加载器
			
有些东西就是操刀开干,没什么好解释的.... 问题引入 解决问题 直接上码 env.js index.js 使用方法 初始化 使用方法 写在最后 问题引入 大家都知道在日常的研发过程中,我们的程序会有 ...
 - HTTP请求和响应模式(B/S)(2)
			
B/S 及浏览器/客服端模式 根据发送的状态码不同,显示response的状态不同
 - C#-委托 lambda 匿名方法 匿名类型
			
1.lambda 匿名方法 匿名类型 delegate void d1(); d1 d = delegate(){Console.WriteLine("this is a test" ...
 - 洛谷 P1617 爱与愁的一千个伤心的理由
			
P1617 爱与愁的一千个伤心的理由 题目背景 (本道题目隐藏了两首歌名,找找看哪~~~) <爱与愁的故事第一弹·heartache>第二章. 经历了心痛后,爱与愁大神不行了. 题目描述 ...
 - Nodejs之旅開始
			
web前端是一个门槛低,但精通起来比較难的行业,由于它涉及的范围比較广,也许在十年前.我光靠切图,就能找到一个好的职位,可是如今,仅仅会切图.我们非常难找到自己惬意的工作,如今前端职位要求不仅是htm ...
 - hdu 1722 Cake 数学yy
			
题链:http://acm.hdu.edu.cn/showproblem.php? pid=1722 Cake Time Limit: 1000/1000 MS (Java/Others) Me ...
 - 【Linux】进程调度概述
			
1 可运行队列 (基于实时进程调度) 调度程序中最主要的数据结构式运行队列(runqueue).可运行队列是给定处理器上的可运行进程的链表,每一个处理器一个. 每一个可投入运行的进程都唯一的归属于一个 ...