atcoder Moderate Differences(数学)
来源:互联网 发布:成都英创 linux gpio 编辑:程序博客网 时间:2024/06/01 23:48
题意:
给你一序列最左边b和最右边的数a,这个序列要求相邻的数的差距的绝对值得在c和d之间,序列的个数为n,问能不能构造出这样的合法序列。
思路:
这个题是真的巧。
总共有n个数,就有n-1个相邻的数的差,记每个差为f[i],那么所有的f[i]的和就是b-a,这个容易想。
f[i]的取值范围为【-d,-c】U【c,d】之间。
假设有m个数是在【-d,-c】之间,那么如果f[i]的和的取值范围就是【(n-1-m)*c-d*m,(n-1-m)*d-c*m】,假如b-a也在这个范围的话, 就说明我们一定能构造出这样一个序列,
需要从0到n-1去枚举m然后o(1)判断就可以了。
代码:
#include <bits/stdc++.h>using namespace std;int main(){ long long a, b, c, d, n; cin>>n>>a>>b>>c>>d; n--; for(int i=0; i<=n; i++) { if((c*(n-i)-d*i)<=(b-a) && (b-a)<=(d*(n-i)-c*i)) { return 0*printf("YES\n"); } } printf("NO\n");}
阅读全文
0 0
- atcoder Moderate Differences(数学)
- AtCoder:井井井 / ###(数学)
- AtCoder:Chocolate Bar(数学)
- atcoder-Coloring Dominoes(组合数学)
- Differences
- AtCoder
- AtCoder
- AtCoder
- AtCoder
- AtCoder
- Atcoder
- Codeforces 876 B Divisiblity of Differences 基础数学
- CodeForces 876B Divisiblity of Differences(思维 + 数学)
- Atcoder Beginner 057 D Maximum Average Sets 数学+思维
- AtCoder Tenka1 Programmer Beginner Contest D IntegerotS 数学
- Moderate 查单词 @CareerCup
- Moderate 整数打印读法 @CareerCup
- Moderate rand5()产生rand7() @CareerCup
- struts2(二)
- oracle生成随机数GUId
- scrollerView 和 slider 的滑动事件冲突的解决方案
- org.apache.log4j.Logger详解
- AD 快捷键操作(持续更新)
- atcoder Moderate Differences(数学)
- C# 解析XML
- Buff学习
- sql server中联合两个表update数据
- 目录操作
- 当Android targetSdkVersion小于23时如何检查权限
- 字符串相关练习题目
- 反射
- javascript语言精粹(继承)