# 土拨鼠

## A. 土拨鼠比沙雕

# Background

n只沙雕又愚蠢的土拨鼠，他们要比谁最沙雕

# Description

给出n只土拨鼠的沙雕程度，输出最沙雕的土拨鼠的编号

# Format

## Input

第一行一个整数，n

后面n行，每行一个整数，表示第i个土拨鼠的沙雕程度。

## Output

一个整数，表示最沙雕土拨鼠的编号，沙雕土拨鼠们的沙雕程度互不相同。

# Samples

```input1
5
78
87
98
35
10
```

```output1
3
```

# Limitation

n<=1000
每只土拨鼠最多能有多沙雕呢？答：最沙雕的土拨鼠的沙雕程度大于long long long的范围，但也不会超过10^1000次方，输入的数字没有前导零



---

## B. 土拨鼠绕迷宫

# 故事背景

土拨鼠稀里糊涂地走进了一个 $n * n$ 的且仅由0和1组成的矩阵迷宫的左上角，这时，土拨鼠身后的门突然封闭起来了。

这时，一艘外星飞船从天而降，对土拨鼠说：“现在你已经到了矩阵迷宫的左上角，你需要在这个矩阵中蛇形的绕圈寻找所有的1。最后以你走过的路径展开，得到一个由01组成的二进制序列。接下来你需要将这个二进制序列转为十进制。如果这个十进制数能被你刚所找到的1的个数整除，则你可以离开迷宫。否则就永远别想出去了。”

现在外星飞船从迷宫上空拍下迷宫的全貌并发给你，请你编程计算一下土拨鼠能否顺利逃出。

# 题目描述

给定一个 $n * n$ 的正方形01矩阵，请你按照蛇形将矩阵变为一个二进制数并转为十进制。同时你还要找到矩阵中1的个数。如果十进制数能整除1的个数，则输出``y``，否则输出``n``.

将以下矩阵展开

```
0 1 0 1
1 0 1 1
0 0 1 0
1 0 0 1
```

得到二进制数```0101110100101001```

转为十进制是```23849```

矩阵中有```8```个1

```23849```不能整除```8```

所以这个矩阵土拨鼠不能逃出

# 输入格式

第一行包含一个整数 $t(3 \le t \le 20)$, 表示共有多少组测试数据

第二行包含1个整数 $n(3\leq n\leq 8)$，表示矩阵的高和宽。

接下来输入一个矩阵（带空格），且矩阵中只有0和1。

# 输出格式

输出t行数据, 判断土拨鼠能否顺利逃出这个矩阵。能则输出```y```，不能则输出```n```。

# 样例

```input1
1
4
0 1 0 1
1 0 1 1
0 0 1 0
1 0 0 1
```

```output1
n
```

23849 % 8 = 1

```input2
2
2
1 1
0 0
4
0 1 0 1
1 0 1 1
0 0 1 0
1 0 0 1
```

```output2
y
n
```

12 % 2 = 0

23849 % 8 = 1

# 提示

蛇形展开：

![image](file://778k5XQX-mh1Bb7aa7JKo.png)



---

## C. 土拨鼠的约分

# 题目描述

给定一个分数，帮助土拨鼠将它约分到最简分数。

# 输入

一个字符串。字符串由 分子/分母 的形式表示，而且其中的 '/' 号个数不限，也就是说输入`5/2`或`5/////////2`都表示的是$\frac{5}{2}$这个分数。分子分母均在long long范围内的正整数（不包括0）。

# 输出

输出3行，为约分后的分数。

第一行为分子；

第二行为分数线 ------- （减号的个数由分子与分母中位数最多的个数所决定）；

第三行为分母；

重要提示：如果最后约出分母为1的情况，则输出一行，为一个整数。

# 样例

```input1
3//////6
```

```output1
1
-
2
```

```input2
30////////////////////4
```

```output2
15
--
2
```

```input3
1/1
```

```output3
1
```

# 提示

输入字符串中 '/' 号的个数不大于80个。



---

## D. 土拨鼠的减法题

# Background

愚蠢的人类憨憨学减法了, 土拨鼠瑞瑞想做一个恶作剧

# Description

给出两个三位整数$A, B$, 允许改写$A, B$中的任意一位(可以不改), 使得$A-B$的值最大, 注意要求更改完的数据也是三位数.

# Format

## Input

输入一行两个整数$A, B$.

## Output

输出一行$1$个数字, 表示$A-B$的最大值

# Samples

## 样例1

```input1
567 234
```

```output1
733
```

## 样例2

```input2
999 100
```

```output2
899
```

## 样例3

```input3
100 999
```

```output3
-99
```

# Limitation

$100 \leq A, B \leq 999$



---

## E. 土拨鼠，上灯台

# 故事背景

“土拨鼠，上灯台，偷油吃，下不来……”这是小盆友们最熟悉的歌谣。今天，n只土拨鼠真要去上灯台。

# 题目描述

为了防止土拨鼠上灯台时被猫发现（不要问我为什么不要被猫发现，因为它叫土拨“鼠”），只有体型小于k的土拨鼠才能不被猫发现。请你编写一个程序，判断n只土拨鼠中有几只能顺利的上灯台。
# 输入

两行。第一行为整数n（0<n<101）和k(4<k<21)，表示n只土拨鼠和不让猫发现的最大的k体型。第二行为n个整数，表示每只土拨鼠的体型（1~100）。

# 输出

一个整数m，表示有几只土拨鼠能够上灯台，没有输出-1。

# 样例

```样例输入
5 10
12 13 6 9 10
```

```样例输出
3
```


---

## F. 土拨鼠军训

# Background

土拨鼠兄弟们操练起来, 与愚蠢的人类决一死战!

# Description

又是一年秋风至, n个土拨鼠新兵们军训起来了，土拨鼠们从左向右站成一列横队, 编号从左至右为1到n.

开始军训，军训的规则如下：从队首开始一至二报数，凡报到二的出列，剩下的土拨鼠向左看齐，再从头开始进行一至三报数，凡报到三的出列，剩下的土拨鼠向左看齐，继续从队首开始进行一至二报数。。。，以后从队首开始轮流进行一至二报数、一至三报数直到剩下的人数不超过三人为止。

# Format

## Input

本题有多个测试数据组，第一行为组数t，接着为t行新兵人数n，新兵人数不超过5000。

## Output

共有t行，分别对应输入的新兵人数，每行输出剩下的新兵最初的编号，编号之间有一个空格。

# Samples

```input1
2
20
40
```

```output1
1 7 19
1 19 37
```

# Limitation

$ 1 \le t \le 2*10^3 $

$ 1 \le n \le 5*10^3 $




---

## G. 最喜欢老二的土拨鼠

# 最喜欢老二的土拨鼠

## 题目描述

土拨鼠致远最喜欢老二 有 $n$ 个正整数，数字从 $1 \sim n$ 编号，分别为 $a_1,a_2, \dots , a_n$。
Bob 刚学习取模运算，于是便拿这 $n$ 个数进行练习，他写下了所有

$a_i \bmod a_j (1 \le i,j \le n \wedge i \neq j)$

的值，其中 $\bmod$ 表示取模运算。

土拨鼠致远 想知道所有的结果中，严格次大值是多少。将取模后得到的所有值进行去重，即相同的结果数值只保留一个，剩余数中第二大的值就称为严格次大值。

## 输入格式

第一行一个正整数 $n$，表示数字个数。
第二行 $n$ 个正整数表示 $a_i$。

## 输出格式

仅一行一个整数表示答案。
若取模结果去重后剩余数字不足两个，则输出 $-1$。

## 样例 #1

### 样例输入 #1

```
4
4 5 5 6
```

### 样例输出 #1

```
4
```

## 样例 #2

### 样例输入 #2

```
4
1 1 1 1
```

### 样例输出 #2

```
-1
```

## 样例 #3

### 样例输入 #3

```
7
12 3 8 5 7 20 15
```

### 样例输出 #3

```
12
```

## 提示

【数据范围】
对于 $40\%$ 的数据，$3\le n,a_i \le 100$；

对于 $70\%$ 的数据，$3\le n \le 3000$，$1\le a_i \le 10^5$；

对于 $100\%$ 的数据，$3 \le n \le 2\times 10^5$，$1\le a_i \le 10^9$。

【样例 $1$ 解释】
所有取模的结果为 $\{4,4,4,1,0,5,1,0,5,2,1,1\}$。
去重后有：$\{0,1,2,4,5 \}$，结果为 $4$。



---

## H. 土拨鼠塔问题（qwq)

# 题目描述

设有n个大小不等的中空圆盘，按照从小到大的顺序叠套在立柱A上，另有两根立柱B和C。现在要求小土拨鼠把全部圆盘从A柱（称为源柱）移到C柱（称为目标柱），移动过程中可借助B柱（称为中间柱）。移动时有如下的要求：

1） 一次只许移动一个盘。

2） 任何时候、任何柱子上不允许把大盘放在小盘上边

3） 可使用任意一根立柱暂存圆盘。

问：如何用最少步数实现n个盘子的移动？请打印出具体的移动方案

## 输入描述

一行一个正整数n，1<=n<=18

## 输出描述

输出若干行，第i行表示第i步的移动方案

# 样例

```input1
3
```

```output1

```

A->C

A->B

C->B

A->C

B->A

B->C

A->C

```

```

# 限制

1秒，256kb

# 作者liaoleqian,如有雷同，纯属巧合:)



---

## I. 如何让土拨鼠成为一名老六

# Background

@kunkka 帮忙出出数据，我写标程

土拨鼠 哈利 想成为一名老六，来坑 波特 大佬。

# Description

刚开始，哈利只不过是一个非常弱的(老)n，但它可以通过"jia x"，"jian x"，"cheng x"，"chu x"，(x的值不固定) 四种类型的操作来让自己变强，最终变成(老)6。共有m个可以执行的操作，每个操作可以执行无数次。但，如果操作后哈利的n小于0 或者 操作后哈利的n大于$10^6$ 那出题人就会暴怒，所以不能操作。请你算一算，哈利从n变成6，至少需要多少次操作。如果哈利不能从n变成6，请输出"HL CAN'T BE A LAOLIU"。

# Format

## Input

第一行两个整数，n，m
后面m行，每行一个可以执行的操作

## Output

一个整数，哈利从n变成6最少要执行多少次操作。

# Samples

```input1
13 5
jian 1
chu 2
cheng 6
chu 13
jian 7
```

```output1
1
```

```input2
7 1
jia 1
```

```output2
HL CAN'T BE A LAOLIU
```

# Limitation

* 样例1解释 ：13 - 7 = 6
* 还有两种办法，但都是两步
* $0≤n≤10^6,1≤m≤100,1≤x≤1000$
* 除法必须整除



---
