洛谷U32670 小凯的数字(比赛)
题目网址
https://www.luogu.org/problemnew/show/U32670
题目背景
NOIP2018 原创模拟题T1
NOIP DAY1 T1 or DAY 2 T1 难度
是否发现与NOIP2017 DAY1 T1 有异曲同工之妙
题目描述
小凯有一天突发奇想,写下了一串数字:l(l+1)(l+2)...(r-1)rl(l+1)(l+2)...(r−1)r
例如:l=2,r=5时,数字为:23452345
l=8,r=12时数字为:8910111289101112
小凯很喜欢数字9,所以他想问你他写下的数字除以9的余数是多少
例如:l=2,r=5时,2345 mod 9 = 5
输入输出格式
输入格式:
第一行为数字Q,表示小凯有Q个问题
第2-Q+1行,每行两个数字 l,r 表示数字范围
输出格式:
对于每行的问题输出一行,一个数字,表示小凯问题的回答
输入输出样例
2
2 5
8 12
5
5
3
1 999
123 456
13579 24680
0
6
0
说明
样例1解释:2345 mod 9 = 5 89101112 mod 9 = 5
30% 数据满足:Q<=10;l,r<=100
50% 数据满足:Q<=100;l,r<=10000
70% 数据满足:Q<=1000;l,r<=10^6
100%数据满足:Q<=10000;l,0<r<=10^12且 l<=r
题解
根据本题的数据范围,不难发现一定是一道数论题。这一题的难度和NOIP提高组day1的第一题水平差不多,所以应该不是很难;
解决本题,首先要知道:
定理1、能被9整除的数各位数字之和能被9整除;
定理2、如果有9*n(n为自然数)个连续的数字(如题意,比如123456789),那么该数一定能被9整除
第一点很好理解,其实第二点也同样如此,根据高斯求和公式,(首项+末项)*项数/2,
有计算经验的同学一定知道,(首项+末项)和项数中一定有一个是2的倍数,所以不存在带余除法,
那么因为项数是9的倍数,所以上述公式(首项+末项)*项数/2,一定是9的倍数,所以定理2成立。
那么,根据这两个定理,本题代码就很好写了。
再整理一遍思路:
1.读入问题数量Q,循环Q次,每次读入l和r;
2.计算出数字个数(即r-l+1的值),并对9取余,即定义一个变量cnt=(r-l+1)%9;
3.从r开始,往前依次枚举cnt次(因为cnt对9取过模,所以最多循环9次)
将枚举出的数字对9取余,加入sum中;
4.输出sum对9取余即可
5.本题还有一个细节:要用long long
代码
#include <cmath>
#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <iostream>
#include <algorithm>
#define ll long long using namespace std; int Q;
ll l,r; void work()
{
scanf ("%d",&Q);
while (Q--)
{
scanf ("%lld%lld",&l,&r);
ll cnt=(r-l+)%;
ll sum=;
for (ll i=,k=r;i<=cnt;i++,k--)
sum+=k%;
printf ("%lld\n",sum%);
}
return;
} int main()
{
work();
return ;
}
出处:https://www.cnblogs.com/yujustin/
洛谷U32670 小凯的数字(比赛)的更多相关文章
- 2017提高组D1T1 洛谷P3951 小凯的疑惑
洛谷P3951 小凯的疑惑 原题 题目描述 小凯手中有两种面值的金币,两种面值均为正整数且彼此互素.每种金币小凯都有 无数个.在不找零的情况下,仅凭这两种金币,有些物品他是无法准确支付的.现在小 凯想 ...
- U32670 小凯的数字 数学
这是洛谷一个比赛中的一道题,和去年NOIP D1T1挺像.我看了一眼之后想“这不是小学奥数吗?求一个数字和就好了呀”...然后,60,剩下T了,gg. 只好看正解,但是一脸懵逼???然后看了证明,c* ...
- 洛谷P3951 小凯的疑惑 - 数学 /扩展欧几里得
传送门 题意:求出a和b不能通过线性组合(即n*a+m*b)得到的最大值: 思路:摘自洛谷: 不妨设 a<b 假设答案为 x 若 x≡m*a ( mod b )(1≤m≤b−1) (mod3)什 ...
- 洛谷 P3951 小凯的疑惑 找规律
目录 题面 题目链接 题目描述 输入输出格式 输入格式: 输出格式: 输入输出样例 输入样例: 输出样例: 说明 思路 证明 AC代码 include<bits/stdc++.h> 题面 ...
- 洛谷 U2878 小R的分数比赛(fraction)
题目提供者 2015c07 标签 数论(数学相关) 高精度 难度 尚无评定 通过/提交 0/29 提交该题 记录 题目背景 P5难度系数:★★★☆☆ 小R再次挑战你. 这次的挑战又会是什么呢? 题目描 ...
- 洛谷 P3951 小凯的疑惑
题目链接 一开始看到这题,我的内心是拒绝的. 以为是同余类bfs,一看数据1e9,发现只能允许O(1)的算法,数学还不太好,做不出来,其实应该打表找规律. 看到网上的题解,如果两个都必须拿,结果一定是 ...
- 洛谷 P3951 小凯的疑惑(数学)
传送门:Problem P3951 https://www.cnblogs.com/violet-acmer/p/9827010.html 参考资料: [1]:http://m.blog.sina.c ...
- 洛谷1373 小a和uim之大逃离
洛谷1373 小a和uim之大逃离 本题地址:http://www.luogu.org/problem/show?pid=1373 题目背景 小a和uim来到雨林中探险.突然一阵北风吹来,一片乌云从北 ...
- 莫队 [洛谷2709] 小B的询问[洛谷1903]【模板】分块/带修改莫队(数颜色)
莫队--------一个优雅的暴力 莫队是一个可以在O(n√n)内求出绝大部分无修改的离线的区间问题的答案(只要问题满足转移是O(1)的)即你已知区间[l,r]的解,能在O(1)的时间内求出[l-1, ...
随机推荐
- 通过一个例子学习Kubernetes里的PersistentVolumeClaim的用法
Kubernetes的pod本身是无状态的(stateless),生命周期通常比较短,只要出现了异常,Kubernetes就会自动创建一个新的Pod来代替它. 而容器产生的数据,会随着Pod消亡而自动 ...
- 【转载】#438 - Benefits of Using Interfaces
You might wonder why you'd define an interface, have a class implement that interface and then acces ...
- IOS 录音(AVAudioRecorder)
#import "HMViewController.h" #import <AVFoundation/AVFoundation.h> @interface HMView ...
- Android(java)学习笔记23:finally关键字的作用
1. finally 关键字的作用 package cn.itcast_07; import java.text.ParseException; import java.text.SimpleDate ...
- struts2+extjs文件上传完整实现(攻克了上传中的各种问题)
版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/shanhuhau/article/details/28617999 首先须要引入上传控件 <s ...
- 自定义Powershell提示符
实现效果: 实现原理: Powershell将个人配置脚本文件的地址存放在$profile变量中, 通过修改该变量达到想要的目的. 实现过程: 1>创建一个新的配置脚本: 2>编辑脚本内容 ...
- 2018.9.16 Redis 边学习边总结
Redis 是一个使用 C 语言写成的,开源的 key-value 数据库..和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合) ...
- P2382 化学分子式
luogu的oier化学一定都很好 这个题是让我们模拟计算化学方程式的过程. 和时间复杂度类似的题目. 我们可以根据括号,将求解分成若干个步骤. 从外部看,需要将一对括号看做一个整体.然后进行计算. ...
- 【洛谷P1005】矩阵取数游戏
矩阵取数游戏 题目链接 每行分别跑一趟区间DP即可 这道题区间DP是非常裸的,按套路来即可 但是很毒瘤的是需要高精度, “我王境泽就是爆零,从这跳下去,也不会用__int128的!” #include ...
- Android学习笔记_5_文件操作
1.Activity提供了openFileOutput()方法可以用于把数据输出到文件中,具体的实现过程与在J2SE环境中保存数据到文件中是一样的. package com.example.servi ...