Time Limit: 2 sec / Memory Limit: 1024 MB
配点: 100 点
問題文
整数 X, L, R が与えられる. L 以上 R 以下の整数のうち,X との差の絶対値が最も小さいものを出力せよ.そのような整数はちょうど 1 つだけ存在することが証明できる.
制約
- 1 \leqq X \leqq 100\,000.
- 1 \leqq L \leqq R \leqq 100\,000.
入力
入力は以下の形式で標準入力から与えられる.
X L R
出力
L 以上 R 以下の整数のうち,X との差の絶対値が最も小さいものを出力せよ.
入力例 1
8 3 6
出力例 1
6
3, 4, 5, 6 のうち,8 との差の絶対値が最も小さいものは 6 である.したがって 6 を出力する.
入力例 2
7 3 10
出力例 2
7
3, 4, 5, 6, 7, 8, 9, 10 のうち,7 との差の絶対値が最も小さいものは 7 である.したがって 7 を出力する.
入力例 3
8 10 10
出力例 3
10
Time Limit: 2 sec / Memory Limit: 1024 MB
配点: 100 点
問題文
JOI 君は長さ N の文字列 S を見つけた.S に含まれる文字はすべて英小文字である.
JOI 君はこの文字列から自分の名前である joi
が連続している部分を先頭から順にすべて探しだすことにした.そして joi
を見つけるたびに,強調のためにそれを大文字の JOI
に置き換えることにした.
文字列 S が与えられたとき,S に含まれる joi
をすべて JOI
に置き換えた文字列を出力するプログラムを作成せよ.
制約
- 3 \leqq N \leqq 100.
- S は長さ N の文字列である.
- S は英小文字からなる.
入力
入力は以下の形式で標準入力から与えられる.
N S
出力
S に含まれる joi
をすべて JOI
に置き換えた文字列を 1 行で出力せよ.
入力例 1
11 joinojoijin
出力例 1
JOInoJOIjin
1 文字目から 3 文字目の joi
と 6 文字目から 8 文字目までの joi
を JOI
に置き換える.
入力例 2
16 jjooiiijoiojioij
出力例 2
jjooiiiJOIojioij
入力例 3
13 nihongoutenai
出力例 3
nihongoutenai
S に joi
がひとつも含まれない場合もあることに注意せよ.
Time Limit: 2 sec / Memory Limit: 1024 MB
配点: 100 点
問題文
長さ N の正整数列 A=(A_1, A_2, \ldots, A_N) が与えられる.正整数列 A の連続部分列の中で昇順に並んでいるもののうち,最長のものの長さを求めよ.
すなわち,A_l \leqq A_{l+1} \leqq \cdots \leqq A_r を満たすような 2 つの整数 l, r ( 1 \leqq l \leqq r \leqq N ) について,r-l+1 の最大値を求めよ.
制約
- 1 \leqq N \leqq 100.
- 1 \leqq A_i \leqq 2020 (1 \leqq i \leqq N).
入力
入力は以下の形式で標準入力から与えられる.
N A_1 A_2 \cdots A_N
出力
正整数列 A の連続部分列の中で昇順に並んでいるもののうち,最長のものの長さを 1 行で出力せよ.
入力例 1
10 3 1 4 1 5 9 2 6 5 3
出力例 1
3
正整数列 A の 4 項目から 6 項目までに対応する連続部分列は 1, 5, 9 であり,これは昇順である.これより長い昇順な連続部分列は存在しない.
入力例 2
10 9 8 7 6 5 5 4 3 2 1
出力例 2
2
正整数列 A の 5 項目から 6 項目までに対応する連続部分列は 5, 5 であり,これは昇順である.これより長い昇順な連続部分列は存在しない.
入力例 3
9 1 2 2 12 120 210 202 1010 2020
出力例 3
6