Comet OJ - Contest #4 B题 奇偶性
题目链接:https://www.cometoj.com/contest/39/problem/B?problem_id=1577
题意:给你一个数列,求L 到 R 区间内 所有数列 (ƒn mod 2)的和。
思路:这题是个找规律的题目,首先数列都要对2取模运算,如果这个数是偶数 那么mod 2就是0,奇数就是1,所以这题等价于求 L 到 R 区间内奇数的个数。
1.当 k 为奇数的时候,我们发现数列的值对2取模后全为1,所以 ans = R - L + 1。
2.当 k 为偶数的时候,假设 k = 4,那么:
ƒ0 | ƒ1 | ƒ2 | ƒ3 | ƒ4 | ƒ5 | ƒ6 | ƒ7 | ƒ8 | ƒ9 | ƒ10 | ƒ11 | ƒ12 | ƒ13 | ƒ14 |
我们知道偶数个奇数相加和等于偶数,奇数个等于奇数,为了方便我们用 1 表示奇数 用 0 表示偶数。
如图 可以发现循环的规律,我们用除法取模的方法可以算出 1 - n 区间内 0 的节点有 ((n - k) / (k + 1) + 1) 个,所以对 k 所在区间进行分类讨论就好了。
AC代码:
#include<cstdio>
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int n;
long long l,r,k;
cin >> n;
while(n--)
{
scanf("%lld%lld%lld",&l,&r,&k);
long long ans = ;
if(k % == )
{
16
if(k >= r)
{
if(r == k)
ans = r - l;
else
ans = r - l + ;
}
else if(k < l)
{
long long ll,rr;
ll = l - ((l - k) / (k + ) + );
rr = r - ((r - k) / (k + ) + );
ans = rr - ll + ;
}
else
{
ans = r - ((r - k) / (k + ) + ) - l + ;
if(l == k) ans += ;
}
}
else
{
ans = r - l + ;
}
printf("%lld\n",ans);
}
return ;
}
Comet OJ - Contest #4 B题 奇偶性的更多相关文章
- Comet OJ - Contest #10 C题 鱼跃龙门
###题目链接### 题目大意: 给你一个 x ,让你求出最小的正整数 n 使得 n * (n + 1) / 2 % x == 0 ,即 n * (n + 1) % 2x == 0 . 分析: 1 ...
- Comet OJ - Contest #0 A题 解方程 (数学)
题目描述 小象同学在初等教育时期遇到了一个复杂的数学题,题目是这样的: 给定自然数 nn,确定关于 x, y, zx,y,z 的不定方程 \displaystyle \sqrt{x - \sqrt{n ...
- Comet OJ - Contest #11 B题 usiness
###题目链接### 题目大意:一开始手上有 0 个节点,有 n 天抉择,m 种方案,在每天中可以选择任意种方案.任意次地花费 x 个节点(手上的节点数不能为负),使得在 n 天结束后,获得 y 个节 ...
- Comet OJ - Contest #10 B题 沉鱼落雁
###题目链接### 题目大意:有 n 个正整数,每个正整数代表一个成语,正整数一样则成语相同.同一个正整数最多只会出现 3 次. 求一种排列,使得这个排列中,相同成语的间隔最小值最大,输出这个最小间 ...
- Comet OJ - Contest #2 C题 言论的阴影里妄想初萌
题目描述 Takuru 是一名能力者,他在地震时获得了念力致动的能力.所以他经常用自己的能力去干一些奇奇怪怪的事情. 有一天他获得了一张 nn 个点的无向完全图,之后他使用了能力,导致这张图的 \fr ...
- Comet OJ - Contest #4--前缀和
原题:Comet OJ - Contest #4-B https://www.cometoj.com/contest/39/problem/B?problem_id=1577传送门 一开始就想着暴力打 ...
- Comet OJ - Contest #11 题解&赛后总结
Solution of Comet OJ - Contest #11 A.eon -Problem designed by Starria- 在模 10 意义下,答案变为最大数的最低位(即原数数位的最 ...
- Comet OJ - Contest #13-C2
Comet OJ - Contest #13-C2 C2-佛御石之钵 -不碎的意志-」(困难版) 又是一道并查集.最近做过的并查集的题貌似蛮多的. 思路 首先考虑,每次处理矩形只考虑从0变成1的点.这 ...
- Comet OJ - Contest #13 「火鼠的皮衣 -不焦躁的内心-」
来源:Comet OJ - Contest #13 芝士相关: 复平面在信息学奥赛中的应用[雾 其实是道 sb 题??? 发现原式貌似十分可二项式定理,然后发现确实如此 我们把 \(a^i\) 替换成 ...
随机推荐
- C++之前置自增与后置自增
关于前置自增与后置自增的区别我是参考这里:http://bbs.bccn.net/thread-454977-1-1.html 简单复述下,比如++x; 与 x++; 在C中,++x这个表达式的值为原 ...
- pandas中的quantile函数
https://blog.csdn.net/weixin_38617311/article/details/87893168 data.price.quantile([0.25,0.5,0.75]) ...
- python学习笔记:数据类型——数字、字符串、元祖、字典
计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值.但是,计算机能处理的远不止数值,还可以处理文本.图形.音频.视频.网页等各种各样的数据,不同的数据,需要定义不同的数 ...
- JavaFX教程
JavaFX是Java的下一代图形用户界面工具包.JavaFX是一组图形和媒体API,我们可以用它们来创建和部署富客户端应用程序. JavaFX允许开发人员快速构建丰富的跨平台应用程序.JavaFX通 ...
- swat - 基于web的samba管理工具
总览 swat [ -s smb config file ] [ -a ] 描述 此程序是 samba 套件的一部分. swat 允许 samba 管理员通过web浏览器配置复杂的 smb.conf ...
- Stm32CubeMX5 创建LED控制工程 - 基于stmf051k8u6
一. 创建一个控制LED的工程 1. 安装好 Stm32CubeMX5 后 打开软件 选择 “ File--> New Project...” 创建一个新工程 2. 之后会出现一个选择芯片的窗 ...
- HashMap循环
1. Map的四种遍历方式下面只是简单介绍各种遍历示例(以HashMap为例),各自优劣会在本文后面进行分析给出结论. (1) for each map.entrySet() Java 1 2 ...
- 论文学习——《Learning to Compose with Professional Photographs on the Web》 (ACM MM 2017)
总结 1.这篇论文的思路基于一个简单的假设:专业摄影师拍出来的图片一般具备比较好的构图,而如果从他们的图片中随机抠出一块,那抠出的图片大概率就毁了.也就是说,原图在构图方面的分数应该高于抠出来的图片. ...
- socket中的绑定
- 详解 MySQL int 类型的长度值问题
以下是每个整数类型的存储和范围 (来自 mysql 手册)