From fbd4f2129ce8fe106391302896dd86e05b2f331b Mon Sep 17 00:00:00 2001 From: nsfisis Date: Fri, 5 Dec 2025 04:08:22 +0900 Subject: add files --- archive/q/base32/a/20/index.html | 168 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 168 insertions(+) create mode 100644 archive/q/base32/a/20/index.html (limited to 'archive/q/base32/a/20/index.html') diff --git a/archive/q/base32/a/20/index.html b/archive/q/base32/a/20/index.html new file mode 100644 index 0000000..7efb546 --- /dev/null +++ b/archive/q/base32/a/20/index.html @@ -0,0 +1,168 @@ + + + + + 問題 #2 - 回答 #20 | Albatross.PHP + + + + + +
+ +
+
+

問題 #2 - 回答 #20

+ + +

Base32

+

+ RFC 4648 で定義された Base32 エンコーディングを実装してください。 +標準入力から与えられる各行に対し、Base32 エンコードをおこなった文字列を標準出力へ改行区切りで出力してください。 +なお、アルファベットの出力には大文字を用いてください。 +

+

回答 #20

+

+ yamamoto-hiroya が 2024-03-07 23:25:32 に投稿 +

+

コード

+

+ 446 byte +

+
const A='ABCDEFGHIJKLMNOPQRSTUVWXYZ234567';
+while($l=trim(fgets(STDIN))){
+  $b=$c='';
+  for($i=0;$i++<strlen($l);){
+    $b.=str_pad(base_convert(strval(ord($l[$i])),10,2),8,'0',STR_PAD_LEFT);
+  }
+  $c='';
+  foreach (str_split($b, 5) as $b) {
+    $c .= A[base_convert(str_pad($b, 5, '0'), 2, 10)];
+  }
+  $c .= match (strlen($b) % 40) {
+    8 => '======',
+    16 => '====',
+    24 => '===',
+    32 => '=',
+    default => '',
+  };
+  echo $c, "\n";
+}
+

実行結果

+
+
+
+ ステータス: 失敗 +
+
+

テストケース 1

+
+ ステータス: 不正解 +
+

標準出力

+

+Warning: Uninitialized string offset 4 in php.wasm code on line 10
+N5TWKAA
+
+Warning: Uninitialized string offset 4 in php.wasm code on line 10
+NF4W6AA
+
+Warning: Uninitialized string offset 4 in php.wasm code on line 10
+OVTWCAA
+
+
+

標準エラー出力

+

+
+

テストケース 2

+
+ ステータス: 不正解 +
+

標準出力

+

+Warning: Uninitialized string offset 15 in php.wasm code on line 10
+QGDOHAML4OBIVY4BV7RYDEQA
+
+Warning: Uninitialized string offset 15 in php.wasm code on line 10
+QGVOHAMM4OBITY4BQ3RYDFYA
+
+Warning: Uninitialized string offset 15 in php.wasm code on line 10
+QKH6HAMZ4OBITY4CQLRYDIIA
+
+
+

標準エラー出力

+

+
+

テストケース 3

+
+ ステータス: 不正解 +
+

標準出力

+

+Warning: Uninitialized string offset 7 in php.wasm code on line 10
+GIZTINJWG4AA
+
+Warning: Uninitialized string offset 2 in php.wasm code on line 10
+GIAA
+
+Warning: Uninitialized string offset 10 in php.wasm code on line 10
+GIZTINJWG44DSMAA
+
+Warning: Uninitialized string offset 8 in php.wasm code on line 10
+GIZTINJWG44AA
+
+Warning: Uninitialized string offset 3 in php.wasm code on line 10
+GIZQA
+
+Warning: Uninitialized string offset 5 in php.wasm code on line 10
+GIZTINIA
+
+Warning: Uninitialized string offset 9 in php.wasm code on line 10
+GIZTINJWG44DSAA
+
+Warning: Uninitialized string offset 4 in php.wasm code on line 10
+GIZTIAA
+
+Warning: Uninitialized string offset 1 in php.wasm code on line 10
+AA
+
+Warning: Uninitialized string offset 6 in php.wasm code on line 10
+GIZTINJWAA
+
+
+

標準エラー出力

+

+
+

テストケース 4

+
+ ステータス: 不正解 +
+

標準出力

+

+Warning: Uninitialized string offset 5 in php.wasm code on line 10
+EBRCAYYA
+
+Warning: Uninitialized string offset 18 in php.wasm code on line 10
+QGBOHAMEEDRYDBRA4OAYQIHDQGFAA
+
+
+

標準エラー出力

+

+
+
+ +
+ + + -- cgit v1.2.3-70-g09d2