洛谷打卡Day 5

2022-07-18 02:27:13 字數 1357 閱讀 5980

題目描述

這個題目描述真是惱火。。。

人類終於登上了火星的土地並且見到了神秘的火星人。人類和火星人都無法理解對方的語言,但是我們的科學家發明了一種用數字交流的方法。這種交流方法是這樣的,首先,火星人把乙個非常大的數字告訴人類科學家,科學家破解這個數字的含義後,再把乙個很小的數字加到這個大數上面,把結果告訴火星人,作為人類的回答。

火星人用一種非常簡單的方式來表示數字――掰手指。火星人只有乙隻手,但這只手上有成千上萬的手指,這些手指排成一列,分別編號為1,2,3…。火星人的任意兩根手指都能隨意交換位置,他們就是通過這方法計數的。

乙個火星人用乙個人類的手演示了如何用手指計數。如果把五根手指――拇指、食指、中指、無名指和小指分別編號為1,2,3,4和5,當它們按正常順序排列時,形成了5位數12345,當你交換無名指和小指的位置時,會形成5位數12354,當你把五個手指的順序完全顛倒時,會形成54321,在所有能夠形成的120個5位數中,12345最小,它表示1;12354第二小,它表示2;54321最大,它表示120。下表展示了只有3根手指時能夠形成的6個3位數和它們代表的數字:

三進製數

123132

213231

312 321

代表的數字12

3456

現在你有幸成為了第乙個和火星人交流的地球人。乙個火星人會讓你看他的手指,科學家會告訴你要加上去的很小的數。你的任務是,把火星人用手指表示的數與科學家告訴你的數相加,並根據相加的結果改變火星人手指的排列順序。輸入資料保證這個結果不會超出火星人手指能表示的範圍。

輸入格式

共三行。

第一行乙個正整數n,表示火星人手指的數目(1≤n≤10000)。

第二行是乙個正整數m,表示要加上去的小整數(1≤m≤100)。

下一行是1到n這n個整數的乙個排列,用空格隔開,表示火星人手指的排列順序。

輸出格式

n個整數,表示改變後的火星人手指的排列順序。每兩個相鄰的數中間用乙個空格分開,不能有多餘的空格。

輸入輸出樣例

輸入

5

31 2 3 4 5

*輸出 *

1 2 4 5 3

#include#includeusing namespace std;

int main()

}}

一道深搜的題,求上公升序列。

洛谷打卡Day 8

題目描述 這次期末考試,kkksc03 需要考 4 科。因此要開始刷習題集,每科都有乙個習題集,分別有 s1,s2,s3,s4道題目,完成每道題目需要一些時間,可能不等 a1,a2,b1,b2,bs,c1,c2,cs,d1,d2,ds kkksc03 有乙個能力,他的左右兩個大腦可以同時計算 2 道...

洛谷打卡 Day6

題目描述 某國法律規定,只要乙個由 n m個小方塊組成的旗幟符合如下規則,就是合法的國旗。毛熊 阿嚏 從最上方若干行 至少一行 的格仔全部是白色的 接下來若干行 至少一行 的格仔全部是藍色的 剩下的行 至少一行 全部是紅色的 現有乙個棋盤狀的布,分成了 n 行 m 列的格仔,每個格仔是白色藍色紅色之...

洛谷打卡 Day4

題目描述 現在absi2011拿出了x個迷你裝藥物 嗑藥打人可恥 準備開始與那些人打了 由於迷你裝乙個只能管一次,所以absi2011要謹慎的使用這些藥,悲劇的是,沒到達最少打敗該人所用的屬性藥了他打人必輸 所以他用2個藥去打別人,別人卻表明3個藥才能打過,那麼相當於你輸了並且這兩個屬性藥浪費了。現...