ZOJ 3798--解题报告
题目相关:
3798相关链接: http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=5330
Alice和Bob玩数字游戏, 这次Alice和Bob玩的是绝对值游戏. (Alice和Bob以前只玩博弈类游戏, 现在开始玩数列了...)
Alice有n个数(分别是1~n), 然后Alice随机从N个数中取数, 组成一个数列{A(i)}.
Bob来构建{B(i)}数列, 满足如下规则:
{ B(1) = A(1)
{ B(i) = | A(i) - B(i-1) | (i>=2 && i<=n)
目标是:
所有序列中B(n)的最小值和最大值, 并且构造它们的一种可能序列.
思路分析:
可以猜测该题是规律题, 那么我们来找找规律, 看看其满足什么样的规律?
枚举2, 3, 4的情况
1). 当n=2时, (1, 2)的最小值为1(2, 1), 最大值为1(2, 1)
2). 当n=3时, (1, 2, 3)的最小值为0(3, 2, 1), 最大值为2(1, 2, 3)
3). 当n=4时, (1, 2, 3, 4)的最小值为0(4, 3, 2, 1), 最大值为4(3, 2, 1, 4)
B(n)的最小值, 可以构造序列{n, n-1, ..., 4, 3, 2, 1}, 观察得这必然是最小的序列之一.
再由奇偶性分析, 最后的差值由奇数个数决定, 奇数个时B(n)最小值为1, 偶数个时B(n)最小值为0, 验证和满足猜测.
同时我们可以大胆猜测, B(n)最大取值 = n - B(n - 1)<最小值>, 即 序列{ B(n) }={ 最小值 B(n -1 )序列, n }
AC代码:
#include <cstdio>// *) 找规律问题
class game_t {
public:int min_score(int n) {if ( ((n + 1) >> 1) & 0x01 ) {return 1;} return 0;}void solve(int n) {// *) 处理最小值/最大值printf("%d %d\n", min_score(n), n - min_score(n - 1));// *) 简单构造最小值for ( int i = n; i > 1; i-- ) {printf("%d ", i);} printf("1\n");// *) 简单构造最大值 for ( int i = n - 1; i > 0; i-- ) {printf("%d ", i);} printf("%d\n", n);}
};int main()
{int n;game_t game;while ( scanf("%d", &n) != EOF ) {game.solve(n); }return 0;
}
转载于:https://www.cnblogs.com/mumuxinfei/p/3953492.html
ZOJ 3798--解题报告相关推荐
- [zz][ZOJ Monthly]October 2008解题报告
Connect4 Connect Four(Author: SONG, Yu[EZdestroyer]) 题目的背景就是Linux下的同名游戏,两个人在7*7的槽里轮流扔棋子,每次棋子都扔进某一列,棋 ...
- uscao 线段树成段更新操作及Lazy思想(POJ3468解题报告)
线段树成段更新操作及Lazy思想(POJ3468解题报告) 标签: treequerybuildn2cstruct 2011-11-03 20:37 5756人阅读 评论(0) 收藏 举报 分类: ...
- 解题报告(十八)数论题目泛做(Codeforces 难度:2000 ~ 3000 + )
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量的题解和代码,题目难度不一 ...
- 【解题报告系列】超高质量题单 + 题解(ACM / OI)超高质量题解
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我新写的超高质量的题解和代码,题目难度不 ...
- 解题报告(三)多项式求值与插值(拉格朗日插值)(ACM / OI)
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量的题解和代码,题目难度不一 ...
- 解题报告(十三)中国剩余定理(ACM / OI)
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量的题解和代码,题目难度不一 ...
- 解题报告(四)生成函数(ACM/ OI)
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量的题解和代码,题目难度不一 ...
- 解题报告(八) prufer 序列与 Cayley 公式(ACM / OI)超高质量题解
繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量题解和代码,题目难度不一定按照题号排序,我会在每道题后面加上题目难度指数(1∼51 \sim 51∼5),以模板题难度 11 ...
- 解题报告(一)E、(BZOJ4589)Hard Nim(博弈论 + FWT)
繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量题解和代码,题目难度不一定按照题号排序,我会在每道题后面加上题目难度指数(1∼51 \sim 51∼5),以模板题难度 11 ...
- 解题报告(五)组合计数(ACM / OI)超高质量题解
繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量题解和代码,题目难度不一定按照题号排序,我会在每道题后面加上题目难度指数(1∼51 \sim 51∼5),以模板题难度 11 ...
最新文章
- linux 笔记--while循环、函数和进程管理
- matlab里performance,关于神经网络performance图的问题
- SAP 库存关联表信息
- bugku——web 做题记录
- Ubuntu 16.04 安装mysql5.7
- Apt-get使用指南
- SQL性能优化整合持续更新
- nuxt页面跳转_Nuxt.js错误页面跳转可能出现的问题
- 【Flink】Flink心跳机制分析
- Atitit.数据库分区的设计 attilax 总结
- MyEclipse集成SVN插件subclipse
- Veeam BR 9.5 U3a备份报错异常处理方法
- 第十一届蓝桥杯 b组
- 自定义照相机官方指南
- 一种设计软件界面的万能HTML标签
- Tensorflow(八) —— Tensor的合并与切割
- 前端学习案例16-js中的HMR
- 程序设计基础实训报告
- Flask中'endpoint'(端点)的理解
- Jasper问题总结与解决方法~
热门文章
- python爬虫用途-Python爬虫入门知识:解析数据篇
- python对excel某一列求和-96、python操作excel求和
- python3.6安装pygame-Pygame 框架安装教程(Python3.6为例)
- python实现文件下载-python实现文件上传下载
- python软件怎么用-Python如何创建应用程序
- python详细安装教程3.7.4-Linux下Python3.7.4 安装教程
- python教程第四版pdf下载-笨办法学python 第四版 中文pdf高清版
- python横向柱状图-python画柱状图--不同颜色并显示数值的方法
- python怎么写文件-python 头文件怎么写
- python白名单验证-JWT黑名单和白名单