BZOJ 1811 IOI 2005 mea 乱搞
来源:互联网 发布:php竞猜源码 编辑:程序博客网 时间:2024/04/26 06:47
题目大意:给出一个序列中相邻两个的平均值,问有多少个序列可以满足这个性质。
思路:不难看出,只要确定了任意一个数字,整个序列就是确定的。我们设第一个值为k,那么后面的值都可以用表达式表示。然后做一下差分,保证每一项>0,就可以确定k的范围,每一个k值对应一个序列。
CODE:
#define _CRT_SECURE_NO_DEPRECATE#include <cmath>#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>#define MAX 5000010#define INF 0x3f3f3f3fusing namespace std;#define min(a,b) ((a) < (b) ? (a):(b))#define max(a,b) ((a) > (b) ? (a):(b))int cnt;int a[MAX],src[MAX];int _min = -INF,_max = INF;int main(){cin >> cnt;for(int i = 1; i <= cnt; ++i) {scanf("%d",&a[i]);a[i] = a[i] * 2 - a[i - 1];}for(int i = 1; i <= cnt; ++i)src[i] = a[i] - a[i - 1];for(int i = 1; i <= cnt; ++i) {if(i&1) _max = min(_max,ceil((double)src[i] / 2));else_min = max(_min,floor(-(double)src[i] / 2));}cout << ((_max - _min) < 0 ? 0:(_max - _min + 1)) << endl;return 0;}
0 0
- BZOJ 1811 IOI 2005 mea 乱搞
- bzoj 1811: [Ioi2005]mea 乱搞
- BZOJ 1811 IOI2005 mea
- BZoj 1811 mea(构造并维护不等式)
- BZOJ 1257 - 数学题 乱搞
- BZOJ 4236 set乱搞
- BZOJ 2600 IOI 2011 ricehub 二分
- BZOJ 3246 IOI 2013 Dreaming 树形DP
- BZOJ 2599 IOI 2011 Race 点分治
- BZOJ 1806 IOI 2007 Miners 矿工配餐
- 【BZOJ】【P3707】【圈地】【题解】【乱搞】
- BZOJ 4216 Pig 分块乱搞
- [树 乱搞] BZOJ 4238 电压
- bzoj 2079: [Poi2010]Guilds 乱搞
- bzoj 2529: [Poi2011]Sticks 乱搞
- 【bzoj 2627】JZPTAB - 乱搞数学题
- [乱搞] BZOJ 1141 [POI2009]Slw
- bzoj 2213: [Poi2011]Difference 乱搞
- 浏览器 兼容性的问题
- KindEditor在springmvc中的使用(maven项目完整版)
- ExtJs4.2 学习笔记
- AfxBeginThread和CreateThread具体区别
- 电商文案写作的要诀
- BZOJ 1811 IOI 2005 mea 乱搞
- Unique Binary Search Trees II
- saiku server saiku-server 下载地址
- Multiplying by Rotation——进制循环节
- hibernate HQL语句
- PostgreSQL对接SequoiaDB
- MySQL查询和修改auto_increment
- C语言中int到float的强制类型转换(转)
- Android性能优化典范