题目相关:
  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--解题报告相关推荐

  1. [zz][ZOJ Monthly]October 2008解题报告

    Connect4 Connect Four(Author: SONG, Yu[EZdestroyer]) 题目的背景就是Linux下的同名游戏,两个人在7*7的槽里轮流扔棋子,每次棋子都扔进某一列,棋 ...

  2. uscao 线段树成段更新操作及Lazy思想(POJ3468解题报告)

    线段树成段更新操作及Lazy思想(POJ3468解题报告) 标签: treequerybuildn2cstruct 2011-11-03 20:37 5756人阅读 评论(0) 收藏 举报  分类: ...

  3. 解题报告(十八)数论题目泛做(Codeforces 难度:2000 ~ 3000 + )

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量的题解和代码,题目难度不一 ...

  4. 【解题报告系列】超高质量题单 + 题解(ACM / OI)超高质量题解

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我新写的超高质量的题解和代码,题目难度不 ...

  5. 解题报告(三)多项式求值与插值(拉格朗日插值)(ACM / OI)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量的题解和代码,题目难度不一 ...

  6. 解题报告(十三)中国剩余定理(ACM / OI)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量的题解和代码,题目难度不一 ...

  7. 解题报告(四)生成函数(ACM/ OI)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量的题解和代码,题目难度不一 ...

  8. 解题报告(八) prufer 序列与 Cayley 公式(ACM / OI)超高质量题解

    繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量题解和代码,题目难度不一定按照题号排序,我会在每道题后面加上题目难度指数(1∼51 \sim 51∼5),以模板题难度 11 ...

  9. 解题报告(一)E、(BZOJ4589)Hard Nim(博弈论 + FWT)

    繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量题解和代码,题目难度不一定按照题号排序,我会在每道题后面加上题目难度指数(1∼51 \sim 51∼5),以模板题难度 11 ...

  10. 解题报告(五)组合计数(ACM / OI)超高质量题解

    繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量题解和代码,题目难度不一定按照题号排序,我会在每道题后面加上题目难度指数(1∼51 \sim 51∼5),以模板题难度 11 ...

最新文章

  1. linux 笔记--while循环、函数和进程管理
  2. matlab里performance,关于神经网络performance图的问题
  3. SAP 库存关联表信息
  4. bugku——web 做题记录
  5. Ubuntu 16.04 安装mysql5.7
  6. Apt-get使用指南
  7. SQL性能优化整合持续更新
  8. nuxt页面跳转_Nuxt.js错误页面跳转可能出现的问题
  9. 【Flink】Flink心跳机制分析
  10. Atitit.数据库分区的设计 attilax  总结
  11. MyEclipse集成SVN插件subclipse
  12. Veeam BR 9.5 U3a备份报错异常处理方法
  13. 第十一届蓝桥杯 b组
  14. 自定义照相机官方指南
  15. 一种设计软件界面的万能HTML标签
  16. Tensorflow(八) —— Tensor的合并与切割
  17. 前端学习案例16-js中的HMR
  18. 程序设计基础实训报告
  19. Flask中'endpoint'(端点)的理解
  20. Jasper问题总结与解决方法~

热门文章

  1. python爬虫用途-Python爬虫入门知识:解析数据篇
  2. python对excel某一列求和-96、python操作excel求和
  3. python3.6安装pygame-Pygame 框架安装教程(Python3.6为例)
  4. python实现文件下载-python实现文件上传下载
  5. python软件怎么用-Python如何创建应用程序
  6. python详细安装教程3.7.4-Linux下Python3.7.4 安装教程
  7. python教程第四版pdf下载-笨办法学python 第四版 中文pdf高清版
  8. python横向柱状图-python画柱状图--不同颜色并显示数值的方法
  9. python怎么写文件-python 头文件怎么写
  10. python白名单验证-JWT黑名单和白名单