链接:https://vjudge.net/problem/UVA-1363

题意:给出n  k,当 i 属于 1~n 时 ,求解 n% i 的和

n 和 k 的范围都是 1 到 10^9;

商相同 的余数数列 是 公差为商 的 递减等差数列

应该让k / i相等的一连串k % i相加,举个例子:

100 / 34 = 2 ... 32

100 / 35 = 2 ... 30

100 / 36 = 2 ... 28

...

100 / 50 = 2 ... 0

递减等差数列通项公式:an=a1-(n-1)*d

前n项和公式:sum=n*a1-n*(n-1)*d/2;

#include<iostream>
#include<algorithm>
#define ll long long
using namespace std;
ll n,k,d,a,len,sum;
int main()
{
freopen("joseph.in","r",stdin);
freopen("joseph.out","w",stdout);
while(cin>>n>>k)
{
sum=;
for(ll i=;i<=n;i=i+len)
{
d=k/i;//公差
a=k%i;//递减等差数列的首项,最长递减到零结束
if(i>k)
{
sum=sum+k*(n-k);
break;
}
len=a/d+;//由递减等差数列的的通项公式an=a1+(n-1)*d解得数列递减到0的长度
len=min(len,n-i+);//最后一段等差数列可能没有递减到零,长度要另外判断
sum=sum+len*a-len*(len-)*d/;//等差数列前n项和公式
}
cout<<sum<<endl;
}
return ;
}

Problem J. Joseph’s Problem 约瑟夫问题--余数之和的更多相关文章

  1. UVa 1363 (数论 数列求和) Joseph's Problem

    题意: 给出n, k,求 分析: 假设,则k mod (i+1) = k - (i+1)*p = k - i*p - p = k mod i - p 则对于某个区间,i∈[l, r],k/i的整数部分 ...

  2. UVA 1363 Joseph's Problem 找规律+推导 给定n,k;求k%[1,n]的和。

    /** 题目:Joseph's Problem 链接:https://vjudge.net/problem/UVA-1363 题意:给定n,k;求k%[1,n]的和. 思路: 没想出来,看了lrj的想 ...

  3. 实验12:Problem J: 动物爱好者

    #define null ""是用来将字符串清空的 #define none -1是用来当不存在这种动物时,返回-1. 其实这种做法有点多余,不过好理解一些. Home Web B ...

  4. Codeforces Gym 100342J Problem J. Triatrip 求三元环的数量 bitset

    Problem J. Triatrip Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/gym/100342/at ...

  5. The Ninth Hunan Collegiate Programming Contest (2013) Problem J

    Problem J Joking with Fermat's Last Theorem Fermat's Last Theorem: no three positive integers a, b, ...

  6. Codeforces Gym 100342J Problem J. Triatrip bitset 求三元环的数量

    Problem J. TriatripTime Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/gym/100342/att ...

  7. Problem J: 求个最大值

    Problem J: 求个最大值 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 871  Solved: 663[Submit][Status][Web ...

  8. Problem J. Journey with Pigs

    Problem J. Journey with Pigshttp://codeforces.com/gym/241680/problem/J考察排序不等式算出来单位重量在每个村庄的收益,然后生序排列猪 ...

  9. 2010-2011 ACM-ICPC, NEERC, Moscow Subregional Contest Problem J. Joke 水题

    Problem J. Joke 题目连接: http://codeforces.com/gym/100714 Description The problem is to cut the largest ...

随机推荐

  1. nginx 书籍

    1.<实战nginx> 2.<深入理解nginx> 3.nginx开发从入门到精通 http://tengine.taobao.org/book/ 4.Nginx源码学习,配置 ...

  2. JSON转换的实现

    String转成JSON这个依赖很重要,我们将围绕fastjson中的JSONObject这个类来谈转换 <dependency> <groupId>com.alibaba&l ...

  3. 解题报告:luogu P1196 [NOI2002]银河英雄传说

    由于并查集让我很自闭(其实是我太弱了),所以学习了加权并查集,这是例题: 题目链接:P1196 [NOI2002]银河英雄传说 不是很简单,但对于大佬还是签到题. 合并与路径压缩时直接维护\(dis[ ...

  4. org.apache.commons.logging.LogFactory 错误原因

    上述问题的原因是因为在使用Spring框架时没有导入这个包导致的,导入这个包就ok了.

  5. 一个DBA的雄心壮志

    math-liu, 一个甲方的DBA,同时他还有另外一个名字“怕提神”.在某甲方工作的他最近这几年如打了鸡血一般工作起来完全由拼命三郎的那股劲,据说能唯一使他感到一丝鼓励和安慰的是以下这两位大牛前辈. ...

  6. JS - 数组转字符串

        var arr =['h','e','l','l','o']     var s = arr.join("");       console.log(s); 

  7. Oracle笔记--Sql语句

    1.SQL的三种类型语句: --1)DML(Data Manipulation Language)数据操纵语言 --2)DDL(Data Definition Language):数据定义语言 --3 ...

  8. Java中的输入"scanf",Scanner用法

    1.输入程序 1)Scnner的初始用法: 1 import java.util.Scanner; 2 public class Textone { 3 public static void main ...

  9. C# 篇基础知识8——正则表达式

    正则表达式(Regular Expression)也叫匹配模式(Pattern),用来检验字符串是否满足特定规则,或从字符串中捕获满足特定规则的子串.正则表达式的命名空间是System.Text.Re ...

  10. CPU、内存、硬盘之间的关系

    要完完全全地讲清楚cpu.内存.硬盘之间的关系,博客的篇幅是不够的.这里简单的介绍以下它们之间的关系,抛砖引玉. 1.CPU即中央处理器,是英语“Central Processing Unit”的缩写 ...