blob: a0ea6bf104e8d3693338d3d28c043f731e7cabb0 (
plain)
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
|
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>問題 #2 - 回答 #153 | Albatross.PHP</title>
<link rel="stylesheet" href="../../../../assets/index.css">
<link rel="icon" type="image/svg+xml" href="../../../../assets/favicon.svg">
<script type="module" src="../../../../assets/index.js"></script>
</head>
<body>
<header class="container">
<nav class="navbar">
<a class="navbar-brand" href="../../../../index.html">Albatross.PHP</a>
</nav>
</header>
<main class="container mt-5">
<h1 class="mb-4">問題 #2 - 回答 #153</h1>
<nav>
<ol class="breadcrumb">
<li class="breadcrumb-item"><a href="../../../../index.html">問題一覧</a></li>
<li class="breadcrumb-item"><a href="../../index.html">Base32</a></li>
<li class="breadcrumb-item"><a href="../index.html">回答一覧</a></li>
<li class="breadcrumb-item active">#153</li>
</ol>
</nav>
<h2>Base32</h2>
<p>
RFC 4648 で定義された Base32 エンコーディングを実装してください。
標準入力から与えられる各行に対し、Base32 エンコードをおこなった文字列を標準出力へ改行区切りで出力してください。
なお、アルファベットの出力には大文字を用いてください。
</p>
<h2>回答 #153</h2>
<p>
hanhan1978 が 2024-03-09 15:15:43 に投稿
</p>
<h2>コード</h2>
<p>
319 byte
</p>
<pre><code class="hljs language-php">$T='ABCDEFGHIJKLMNOPQRSTUVWXYZ234567';
while($l=rtrim(fgets(STDIN))){
$b=$r='';
foreach(str_split($l) as $c) $b.=str_pad(decbin(ord($c)),8,0,STR_PAD_LEFT);
foreach(str_split($b,5) as $s) $r.=$T[bindec(str_pad($s,5,"0"))];
$r.=str_repeat("=", strlen($b)%40?8-(strlen($b)%40)/5:0);
echo $r, PHP_EOL;
}</code></pre>
<h2>実行結果</h2>
<div class="js-phper-token">
</div>
<div class="mt-3">
ステータス: <span class="js-aggregated-execution-status" data-answer-id="559">失敗</span>
</div>
<div class="mt-3">
<h3>テストケース 1</h3>
<div>
ステータス: <span class="js-testcase-execution-status" data-testcase-execution-id="1229">不正解</span>
</div>
<h4>標準出力</h4>
<pre><code class="js-testcase-execution-stdout hljs language-plaintext" data-testcase-execution-id="1229">
Deprecated: Implicit conversion from float 1.5999999999999996 to int loses precision in php.wasm code on line 11
NBXWOZI=
Deprecated: Implicit conversion from float 1.5999999999999996 to int loses precision in php.wasm code on line 11
OBUXS3Y=
Deprecated: Implicit conversion from float 1.5999999999999996 to int loses precision in php.wasm code on line 11
MZ2WOYI=
</code></pre>
<h4>標準エラー出力</h4>
<pre><code class="js-testcase-execution-stderr hljs language-plaintext" data-testcase-execution-id="1229">
</code></pre>
<h3>テストケース 2</h3>
<div>
ステータス: <span class="js-testcase-execution-status" data-testcase-execution-id="1230">OK</span>
</div>
<h4>標準出力</h4>
<pre><code class="js-testcase-execution-stdout hljs language-plaintext" data-testcase-execution-id="1230">4OAYNY4BRPRYFCXDQGX6HAMS
4OA2VY4BRTRYFCPDQGDOHAMX
4OBI7Y4BTHRYFCPDQKBOHANB
</code></pre>
<h4>標準エラー出力</h4>
<pre><code class="js-testcase-execution-stderr hljs language-plaintext" data-testcase-execution-id="1230">
</code></pre>
<h3>テストケース 3</h3>
<div>
ステータス: <span class="js-testcase-execution-status" data-testcase-execution-id="1231">不正解</span>
</div>
<h4>標準出力</h4>
<pre><code class="js-testcase-execution-stdout hljs language-plaintext" data-testcase-execution-id="1231">
Deprecated: Implicit conversion from float 4.8 to int loses precision in php.wasm code on line 11
GEZDGNBVGY3Q====
Deprecated: Implicit conversion from float 4.8 to int loses precision in php.wasm code on line 11
GEZA====
GEZDGNBVGY3TQOJQ
Deprecated: Implicit conversion from float 3.2 to int loses precision in php.wasm code on line 11
GEZDGNBVGY3TQ===
Deprecated: Implicit conversion from float 3.2 to int loses precision in php.wasm code on line 11
GEZDG===
GEZDGNBV
Deprecated: Implicit conversion from float 1.5999999999999996 to int loses precision in php.wasm code on line 11
GEZDGNBVGY3TQOI=
Deprecated: Implicit conversion from float 1.5999999999999996 to int loses precision in php.wasm code on line 11
GEZDGNA=
Deprecated: Implicit conversion from float 6.4 to int loses precision in php.wasm code on line 11
GE======
Deprecated: Implicit conversion from float 6.4 to int loses precision in php.wasm code on line 11
GEZDGNBVGY======
</code></pre>
<h4>標準エラー出力</h4>
<pre><code class="js-testcase-execution-stderr hljs language-plaintext" data-testcase-execution-id="1231">
</code></pre>
<h3>テストケース 4</h3>
<div>
ステータス: <span class="js-testcase-execution-status" data-testcase-execution-id="1232">OK</span>
</div>
<h4>標準出力</h4>
<pre><code class="js-testcase-execution-stdout hljs language-plaintext" data-testcase-execution-id="1232">MEQGEIDD
EAQOHAMC4OAYIIHDQGDCBY4BRAQOHAMK
</code></pre>
<h4>標準エラー出力</h4>
<pre><code class="js-testcase-execution-stderr hljs language-plaintext" data-testcase-execution-id="1232">
</code></pre>
</div>
<script type="module" src="../../../../assets/loading.js"></script>
</main>
<footer class="container text-center mt-5 mb-4">
Albatross.PHP - PHPerKaigi 2024
</footer>
</body>
</html>
|