aboutsummaryrefslogtreecommitdiffhomepage
path: root/q3.sql
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2025-03-21 15:11:30 +0900
committernsfisis <nsfisis@gmail.com>2025-03-21 15:40:40 +0900
commit432baae1b49343ea780793330149a285a53bbdc7 (patch)
tree3dc84e517910fb7e15f172bab5a803a6379a7c32 /q3.sql
parent589d2355910e8fc63eabecad631b16b3d3d6a492 (diff)
downloadphperkaigi-2025-albatross-432baae1b49343ea780793330149a285a53bbdc7.tar.gz
phperkaigi-2025-albatross-432baae1b49343ea780793330149a285a53bbdc7.tar.zst
phperkaigi-2025-albatross-432baae1b49343ea780793330149a285a53bbdc7.zip
wip
Diffstat (limited to 'q3.sql')
-rw-r--r--q3.sql104
1 files changed, 85 insertions, 19 deletions
diff --git a/q3.sql b/q3.sql
index 4bc0f7c..39ea76f 100644
--- a/q3.sql
+++ b/q3.sql
@@ -1,30 +1,96 @@
UPDATE problems
SET
-description = $EOF$標準入力から改行区切りのデータが入力されます。
-最初の行は「プレイヤー1の名前,プレイヤー2の名前」の形式です。
-次以降の行は「グー,チョキ」「チョキ,パー」のように「プレイヤー1の手,プレイヤー2の手」が入力されます。プレイヤー1の名前が「X」プレイヤー2の名前が「Y」のとき、手の入力に合わせて「Xさん ✊ vs Yさん ✋ => Yの勝ち」「Xさん ✌️ vs Yさん ✋ => Xの勝ち」のように行ごとに出力してください。
-手の種類は「グー」(✊ = "\u{270A}")「チョキ」(✌️ = "\u{270C}")「パー」(✋ = "\u{270B}")の3つです。
-また、最初の行を含めて区切り文字以外に , が入力されることはありません。
+description = $EOF$標準入力から行区切りでテキストが入力されます。テキストに含まれる整数(n>0)を序数表現(1→1st, 2→2nd)のように置換して出力してください。
+
+入力:
+1 penguin
+2 chance
+3 time's the charm
+
+出力:
+1st penguin
+2nd chance
+3rd time's the charm
+$EOF$
+WHERE title = '序数';
+
+UPDATE problems
+SET
+description = $EOF$標準入力から整数widthが入力されます。入力した数字から例のような図形を出力してください。ただし、入力は4以上の整数のみです。
+
+入力:
+6
+
+出力:
+******
+ *
+ *
+ *
+ *
+ *
+******
+$EOF$
+WHERE title = 'Σ';
+
+UPDATE problems
+SET
+description = $EOF$標準入力から行区切りでテキストが入力されます。テキストに含まれる数字を漢数字に置換して出力してください。置換は一桁ずつおこない、数字が連続している場合でも「十」や「百」にはしないでください。
+
+入力:
+1234567890
+第8回
+ペチパー会議2025
+気温は摂氏7度
+総勢123人
+税込98700円
+
+出力:
+一二三四五六七八九〇
+第八回
+ペチパー会議二〇二五
+気温は摂氏七度
+総勢一二三人
+税込九八七〇〇円
+$EOF$
+WHERE title = '漢数字';
+
+UPDATE problems
+SET
+description = $EOF$標準入力から「西暦年-月」の形式で 2025-02 のような行が1行入力されます。入力された月に合わせて「[Y年M月]」と出力してから、入力された月のカレンダーを日曜始まり形式で整列して出力してください。日付はすべて「3桁空白右寄せ」で表示します。
+
+入力:
+2025-02
+
+出力
+[2025年2月]
+ 1
+ 2 3 4 5 6 7 8
+ 9 10 11 12 13 14 15
+ 16 17 18 19 20 21 22
+ 23 24 25 26 27 28
$EOF$
-WHERE title = 'じゃんけん';
+WHERE title = 'カレンダー';
UPDATE problems
SET
-description = $EOF$標準入力から数字が改行区切りで入力されます。
-出力例のような横2文字縦3行のサイズの罫線文字から構成される文字として、各桁の文字を横に連結して、入力行ごとに出力してください。
-アスキーアートに含まれる余白部分は、通常の「半角スペース("\x20")」です。
-また、入力される数字は 0 または正の整数です。
+description = $EOF$標準入力の最初の行に出力の最大行数 $max が、次以降の行に置換リストが 数,名前 の形式で改行区切りで入力されます。置換リストに含まれる数は2以上の素数で、昇順に入力されます。1 から $max までの連続した整数を改行区切りで出力してください。その際、出力しようとしている数が置換リストの数の倍数なら対応する名前に置き換え、その数が置換リストに含まれる複数の数の公倍数ならリスト内の数が小さい順に連結して置き換えてください。
入力:
-0123456789
-88888
+10
+2,Dizz
+3,Fizz
+5,Buzz
出力:
-┌┐ ┐╶┐┌┐╷╷┌╴┌┐┌┐┌┐┌┐
-││ │┌┘ ┤└┤└┐├┐ │├┤└┤
-└┘ ╵└╴└┘ ╵╶┘└┘ ╵└┘└┘
-┌┐┌┐┌┐┌┐┌┐
-├┤├┤├┤├┤├┤
-└┘└┘└┘└┘└┘
+1
+Dizz
+Fizz
+Dizz
+Buzz
+DizzFizz
+7
+Dizz
+Fizz
+DizzBuzz
$EOF$
-WHERE title = 'でっかい数字';
+WHERE title = 'ダイナミックFizzBuzz';