A. 两只脑斧

Codeforces
IDCF10217A
Time1000ms
Memory256MB
Difficulty
English · Original
Formal · Original
天天最近想要学习用口琴给筝筝吹情歌,但是他以前从来没有学过口琴,只能从最简单的两只脑斧开始学。而口琴有时吸气有时吹气的吹法让天天傻傻地分不清,所以他就只能拿着乐谱来找聪明的你了,快帮帮他! 已知天天使用的是 $24$ 孔口琴,其音阶图如下,其中 $1, 2, \\\\cdots, 7$ 七个阿拉伯数字表示基本的音阶,数字上方有_._或_:_的音阶则分别表示该音阶的音调将在原音阶基础上增高一个八度或两个八度,例如音阶 $3$ 的高八度为 $overset(3,.)$。相应的,数字下方有_._或_:_的音阶也分别表示降低一个八度或低两个八度的音调,例如音阶 $5$ 的低二八度为 $underset(5, :)$。 输入共两行,第一行输入一个正整数 $n " "(1 <= n <= 100)$,表示乐谱中有 $n$ 个音符。 第二行输入 $n$ 个由空格间隔开的字符串,每个字符串描述该乐谱中的一个音阶,这里使用符号_+_和_-_来分别表示音阶地高八度和低八度,例如上图的口琴乐谱的第一个音阶和最后一个音阶可以分别用_5-__-_和_7+_来表示。 请输出 $n$ 个字符描述的口琴吹法,其中第 $i$ 个字符将描述第 $i$ 个音阶的吹法,请用_I_表示吸气,用_E_表示吹气,用_X_表示停顿(在简谱中用_0_表示)。 ## Input 输入共两行,第一行输入一个正整数 $n " "(1 <= n <= 100)$,表示乐谱中有 $n$ 个音符。第二行输入 $n$ 个由空格间隔开的字符串,每个字符串描述该乐谱中的一个音阶,这里使用符号_+_和_-_来分别表示音阶地高八度和低八度,例如上图的口琴乐谱的第一个音阶和最后一个音阶可以分别用_5-__-_和_7+_来表示。 ## Output 请输出 $n$ 个字符描述的口琴吹法,其中第 $i$ 个字符将描述第 $i$ 个音阶的吹法,请用_I_表示吸气,用_E_表示吹气,用_X_表示停顿(在简谱中用_0_表示)。 [samples]
**Definitions** Let $ n \in \mathbb{Z} $ be the number of notes. Let $ S = (s_1, s_2, \dots, s_n) $ be the sequence of note strings, where each $ s_i \in \{ \text{"0"}, \text{"1-"}, \text{"1"}, \text{"1+"}, \text{"2-"}, \text{"2"}, \text{"2+"}, \dots, \text{"7-"}, \text{"7"}, \text{"7+"} \} $. **Constraints** 1. $ 1 \leq n \leq 100 $ 2. Each $ s_i $ is one of the valid note representations: - "0" for rest - $ d $, $ d+ $, $ d- $ for $ d \in \{1, 2, 3, 4, 5, 6, 7\} $, where: - $ d $: natural note - $ d+ $: one octave higher - $ d- $: one octave lower **Objective** For each note $ s_i $, output a character $ c_i \in \{ \text{I}, \text{E}, \text{X} \} $ representing the blowing technique: - $ c_i = \text{X} $ if $ s_i = \text{"0"} $ - $ c_i = \text{E} $ if $ s_i \in \{ \text{"1"}, \text{"2"}, \text{"3"}, \text{"4"}, \text{"5"}, \text{"6"}, \text{"7"}, \text{"5+"}, \text{"6+"}, \text{"7+"} \} $ - $ c_i = \text{I} $ if $ s_i \in \{ \text{"1-"}, \text{"2-"}, \text{"3-"}, \text{"4-"}, \text{"4"}, \text{"5-"}, \text{"6-"}, \text{"7-"}, \text{"1+"}, \text{"2+"}, \text{"3+"} \} $ (Note: Based on standard 24-hole harmonica layout, blow notes are: 1,2,3,4,5,6,7,5+,6+,7+; draw notes are: 1-,2-,3-,4-,4,5-,6-,7-,1+,2+,3+; rest is X.)
API Response (JSON)
{
  "problem": {
    "name": "A. 两只脑斧",
    "description": {
      "content": "天天最近想要学习用口琴给筝筝吹情歌,但是他以前从来没有学过口琴,只能从最简单的两只脑斧开始学。而口琴有时吸气有时吹气的吹法让天天傻傻地分不清,所以他就只能拿着乐谱来找聪明的你了,快帮帮他! 已知天天使用的是 $24$ 孔口琴,其音阶图如下,其中 $1, 2, \\\\\\\\cdots, 7$ 七个阿拉伯数字表示基本的音阶,数字上方有_._或_:_的音阶则分别表示该音阶的音调将在原音阶基础上增高一个八度",
      "description_type": "Markdown"
    },
    "platform": "Codeforces",
    "limit": {
      "time_limit": 1000,
      "memory_limit": 262144
    },
    "difficulty": "None",
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "CF10217A"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "天天最近想要学习用口琴给筝筝吹情歌,但是他以前从来没有学过口琴,只能从最简单的两只脑斧开始学。而口琴有时吸气有时吹气的吹法让天天傻傻地分不清,所以他就只能拿着乐谱来找聪明的你了,快帮帮他!\n\n已知天天使用的是 $24$ 孔口琴,其音阶图如下,其中 $1, 2, \\\\\\\\cdots, 7$ 七个阿拉伯数字表示基本的音阶,数字上方有_._或_:_的音阶则分别表示该音阶的音调将在原音阶基础上增高一个八度...",
      "is_translate": false,
      "language": "English"
    },
    {
      "statement_type": "Markdown",
      "content": "**Definitions**  \nLet $ n \\in \\mathbb{Z} $ be the number of notes.  \nLet $ S = (s_1, s_2, \\dots, s_n) $ be the sequence of note strings, where each $ s_i \\in \\{ \\text{\"0\"}, \\text{\"1-\"}, \\text{\"1\"}, \\t...",
      "is_translate": false,
      "language": "Formal"
    }
  ]
}
Full JSON Raw Segments