[SHUPC 2024] 栅栏密码

Luogu
IDLGP10312
Time1000ms
Memory512MB
DifficultyP3
模拟字符串2024高校校赛
栅栏密码(rail fence)是一种很基础的移位密码。 我们将明文 `Hello,World!` 按如下方式排列: ``` H...o...r .e.l.,.o.l.! ..l...W...d ``` 即把明文 `Hello,World!` 排列成若干个 `\/\/\/` 的形状,然后再逐行按从左到右的顺序取出字符,形成密文。例如第一行为 `Hor`,第二行为 `el,ol!`,第三行为 `lWd`,最终形成的密文为 `Horel,ol!lWd`。 若按上述方式排列的密文有 $h$ 行,则称该栅栏密码的高度为 $h$。 现在我们给出高度 $h$ 和一行密文字符串 $s$,请你输出一行明文字符串 $plain$。 ## Input 第一行读入一个数字 $h\ (2\le h \le10)$,表示密码的高度。 第二行读入一个字符串 $s\ (1\le |s| \le 10^5)$,表示密文。 ## Output 一个字符串 $plain$,表示明文。 [samples]
Samples
Input #1
3
Horel,ol!lWd
Output #1
Hello,World!
Input #2
5
ccehgyaefnpeoobe{lcirg}epriec_ora_g
Output #2
cyberpeace{railfence_cipher_gogogo}
API Response (JSON)
{
  "problem": {
    "name": "[SHUPC 2024] 栅栏密码",
    "description": {
      "content": "栅栏密码(rail fence)是一种很基础的移位密码。 我们将明文 `Hello,World!` 按如下方式排列: ``` H...o...r .e.l.,.o.l.! ..l...W...d ``` 即把明文 `Hello,World!` 排列成若干个 `\\/\\/\\/` 的形状,然后再逐行按从左到右的顺序取出字符,形成密文。例如第一行为 `Hor`,第二行为 `el,ol!`,第三行为 ",
      "description_type": "Markdown"
    },
    "platform": "Luogu",
    "limit": {
      "time_limit": 1000,
      "memory_limit": 524288
    },
    "difficulty": {
      "LuoguStyle": "P3"
    },
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "LGP10312"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "栅栏密码(rail fence)是一种很基础的移位密码。\n\n我们将明文 `Hello,World!` 按如下方式排列:\n\n```\nH...o...r\n.e.l.,.o.l.!\n..l...W...d\n```\n\n即把明文 `Hello,World!` 排列成若干个 `\\/\\/\\/` 的形状,然后再逐行按从左到右的顺序取出字符,形成密文。例如第一行为 `Hor`,第二行为 `el,ol!`,第三行为 ...",
      "is_translate": false,
      "language": "English"
    }
  ]
}
Full JSON Raw Segments