题目描述

「嘻嘻」
我能确认,面前这位影从者的确是一个小女孩。而在我面前排列着一行许多从表面上看起来并没有什么区别的木盒子。到底是怎样的英灵才会在以幼儿时的形态为全盛时期呢,还是说她在幼年之时就英年早逝。
「很奇怪对吧,我是哈桑(assassin)之中的一员,十八位山中老人最年轻的一位」我丝毫没有从她的话语中感觉到压力
「作为山中老人,我并没有什么特技」她拿出了一朵花,那是白玫瑰,而在眨眼间,白玫瑰又消失了。她打开了面前那个木盒子,而那朵白玫瑰正静静的躺在里面「有的是只是把一些小巧的东西不为人知地搬运到不为人所见的地方,比如把需要的小刀运到触手可及的地方和把毒药滴入食物或饮用水之中。但也只是移动一段很小的距离」
「是宝具吗」
「好聪明啊,是固有结界」她取出那朵白玫瑰,而在眨眼间又消失在她的手上
「想要我把你们从这里放出去,就把这朵白玫瑰从这n个排成一排的盒子里面找出来送给我吧。每次你们可以打开一个盒子检查(然后关上),然后我会把这朵玫瑰花移动一次,只是移动到左右相邻的两个盒子中一个
虽然这个问题看起来很困难,但实际上很简单。为了赶时间,我要选用打开盒子次数最少并且一定能够找到玫瑰的方案来把玫瑰找出来。

输入描述:

第一行一个正整数T (1<=T<=100) ,代表接下来有多少次询问.
然后T行,每行一个正整数n (3<=n<=10000) ,表示有多少个木盒子

输出描述:

输出T行。
每行包括多个数字,代表每次检查第几个盒子
(盒子编号从左到右递增,最左边的盒子编号为1,最右边的盒子编号为N)
(若存在多种方案,请输出字典序最小的那种)

两个长度为n的数组A(下标1…n)和B(下标1…n),A的字典序比B小当且仅当 A 1 A_1 A1​< B 1 B_1 B1​或者存在一个整数 j (1<=j<=n),满足对于所有的整数i(1<=i<j)有 A i A_i Ai​ == B i B_i Bi​,且 A j A_j Aj​< B j B_j Bj​.
例如:
{1,1,2,1} < {1,1,2,3}
{2,1,1,3} < {3,1,1,1}
{100,0} == {100,0}
(看不懂…)

示例1

输入

2
3
5

输出

2 2
2 3 4 2 3 4

说明

对于3的样例:
一开始,玫瑰可能在任意一个盒子中.
检查了第2个盒子之后,如果没找到,玫瑰只可能在1,3号盒子中.
移动一次玫瑰之后,玫瑰只可能在2号盒子中.
再次检查2,一定能找到.
所以需要2次.

代码

#include<stdio.h>
#include<string.h>
int main() {int k, n;    int i;    scanf("%d", &k);    while (k--) {        scanf("%d", &n);if (n % 2 == 1) {for (i = 2;i < n;i++)                printf("%d ", i);             for (i = 2;i < n;i++)                if (i == n - 1)                    printf("%d\n", i);                else                    printf("%d ", i);}        else if (n % 2 == 0) {for (i = 2;i < n;i++)                printf("%d ", i);             for (i = n - 1;i >= 2;i--)                if (i == 2)                    printf("%d\n", i);                else                    printf("%d ", i);}     }    return 0;
}

总结

在审题后通过给出的两个例子可以推测出
当盒子为奇数的时候只需要遍历两遍中间的盒子就可以得出答案
但是为偶数不知道要怎么搞,想着全部弄一遍?
想到解决方案也不确定是不是最优解(最简单)
所以很头疼,如果不看别人的解析估计就完全不知道怎么弄了…
目前不知道用的是什么方法写出来的
别人的思路:

说实话我还是不知道他最开始是怎么推导出
先从第二个到倒数第二个接着倒数第二个到第二个这个思路的

2019年广东工业大学腾讯杯新生程序设计竞赛(同步赛)F-失踪的玫瑰相关推荐

  1. 2019年广东工业大学腾讯杯新生程序设计竞赛(同步赛)I-迷途的怪物

    链接:https://ac.nowcoder.com/acm/contest/3036/I 来源:牛客网 题目描述 圣杯能召唤过去,现在甚至未来的各种英灵.想必也有不同世界的英灵会被召唤,所以才会有对 ...

  2. 2019年广东工业大学腾讯杯新生程序设计竞赛(同步赛)E-缺席的神官

    链接:登录-专业IT笔试面试备考平台_牛客网 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 131072K,其他语言262144K 64bit IO Format: % ...

  3. 2019年广东工业大学腾讯杯新生程序设计竞赛(同步赛)

    同步赛链接 A-原初的信纸(最值,STL) 题意: 找 n 个数的最大值. 参考代码: void solve() {int n;std::cin >> n;std::vector<i ...

  4. 2019年广东工业大学腾讯杯新生程序设计竞赛(同步赛)G-虚数的纸牌

    链接:https://ac.nowcoder.com/acm/contest/3036/G 来源:牛客网 题目描述 这次是一个成年男性,他正在玩弄着手上的扑克牌,纸牌在他手中翻飞着,如同空中飞舞的蝴蝶 ...

  5. 2019年广东工业大学腾讯杯新生程序设计竞赛(同步赛)A-原初的信纸

    链接:https://ac.nowcoder.com/acm/contest/3036/A 来源:牛客网 题目描述 「师父,那种东西还有用吗」格蕾停下手上的工作问道 「还有的」我反转着手上的信纸,虽然 ...

  6. 2019年广东工业大学腾讯杯新生程序设计竞赛(同步赛)D-城市的税金

    链接:https://ac.nowcoder.com/acm/contest/3036/D 来源:牛客网 题目描述 影从者,并非真正的从者,而是一种'量产'从者,或是一种劣化从者. 而虚假的圣杯,准确 ...

  7. 2021年广东工业大学第11届腾讯杯新生程序设计竞赛(同步赛)错题笔记

    目录: 题目链接 A 比比谁更大 B 过生日 D 机器人 G 拼牛牛 I 史莱姆 J 水题 K 烧烤丝瓜 L 歪脖子树下的灯 题目链接 A 比比谁更大 题目描述 在一个夜黑风高的晚上,牛哥哥吃完心爱的 ...

  8. 牛客练习-哈尔滨理工大学21级新生程序设计竞赛(同步赛)

    比赛链接:哈尔滨理工大学21级新生程序设计竞赛(同步赛) 文章目录 前言 正文 A.考试周破防 B.咖啡店 C.kiki和bob玩取石子 D.猴王kiki分桃 E.很二的拆分 F.构造字符串 G.信号 ...

  9. 2021年广东工业大学第11届腾讯杯新生程序设计竞赛(同步赛)A 比比谁更大

    链接:https://ac.nowcoder.com/acm/contest/24803/A 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言52 ...

最新文章

  1. Microsoft Hyper-V Server 2008 R2和SCVMM2012部署XenDesktop 5.6桌面虚拟化系列之三准备XenDesktop服务器...
  2. A. Di-visible Confusion【思维】
  3. osg::PositionAttitudeTransform旋转物体
  4. C语言之基本算法32—鞍点
  5. 注释嵌套注释_DIY注释
  6. java 中怎么加汉字,jquery怎么向body里面增加文字
  7. 【CodeForces - 357C 】Knight Tournament(并查集 或 STLset)
  8. php数据关系图,如何利用navicat查看数据表的ER关系图
  9. 中国人工智能学会通讯——KS-Studio:一个知识计算引擎 1.2 知识图谱构建
  10. linux java services_在Linux上将Java应用程序作为服务运行
  11. 网络驱动器映射成功但无法更新文件_我的电脑访问NAS像打开本地硬盘那样打开网络NAS...
  12. [原创] 共享两个有用的网页布局表格
  13. 在yii中加入mongodb扩展
  14. Java连接数据库导致连接数占满
  15. 741. 斐波那契数列
  16. tmux分屏工具使用
  17. 【PCK】Camera性能与内存 QA
  18. 【Java】插入排序、希尔排序详解
  19. 关于入门Android studio的那些问题那些事
  20. 【巴什博弈】HDOJ2188悼念512汶川大地震遇难同胞——选拔志愿者

热门文章

  1. 谷歌气球 simplekml 入门《二》
  2. 如何去除table的边框_怎么把table的外面的边框去掉
  3. java 向上取整 向下取整
  4. Excel设置根据条件整行变色
  5. QtextEdit乱码
  6. redhat linux修复文件系统,RHEL6基础四十五RHEL文件系统修复
  7. 表单短标题(2、3、4个字)的两端对齐- HTML + CSS
  8. 如何进行内存容量测试?
  9. 【NLP】词袋模型(bag of words model)和词嵌入模型(word embedding model)
  10. Win7+theano+CUDA+Keras血泪史