From 399b97607927c558044cc7d382bb02e5a937c417 Mon Sep 17 00:00:00 2001 From: ktrarai Date: Sat, 8 Aug 2026 23:21:26 +0900 Subject: [PATCH 1/3] =?UTF-8?q?=E5=95=8F=E9=A1=8C=2052=20=E3=81=AB?= =?UTF-8?q?=E5=88=A5=E8=A7=A3=E3=82=92=E8=BF=BD=E5=8A=A0=E3=81=97=E3=81=BE?= =?UTF-8?q?=E3=81=97=E3=81=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- answer/52.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/answer/52.md b/answer/52.md index c1ae4d3..7d44fdf 100644 --- a/answer/52.md +++ b/answer/52.md @@ -6,3 +6,11 @@ $ awk 'FNR==1{$1="";h=$0}FNR!=1{print FILENAME,$0,h,NF-1}' data_U data_V | awk ' ``` 別解(田代)$ ls data_* | xargs -I@ bash -c 'unmap num=1 @ | sed "s/^/@ /"' | sed 's/^data_//' ``` + +### 読者別解 + + by [ktrarai](https://github.com/ktrarai) + +``` +$ awk 'FNR == 1 { f = gensub(/data_/, "", 1, FILENAME); n = split($0, h) } FNR > 1 { for (i = 2; i <= n; i++) print f, $1, h[i], $i }' data_[UV] +``` From 613d537e16f0ed186faa1067aed3cd53a0986bb4 Mon Sep 17 00:00:00 2001 From: ktrarai Date: Tue, 11 Aug 2026 13:21:56 +0900 Subject: [PATCH 2/3] =?UTF-8?q?=E5=95=8F=E9=A1=8C=2087=20=E3=81=AB?= =?UTF-8?q?=E5=88=A5=E8=A7=A3=E3=82=92=E8=BF=BD=E5=8A=A0=E3=81=97=E3=81=BE?= =?UTF-8?q?=E3=81=97=E3=81=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 8 進数から 16 進数への変換に `printf '%04x' 0 ...` を使ってみました。 --- answer/87.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/answer/87.md b/answer/87.md index 1cb0542..b840c4c 100644 --- a/answer/87.md +++ b/answer/87.md @@ -6,3 +6,11 @@ $ cat oct.txt | awk '{$1="";print}' | xargs -n 1 | sed '1iobase=16;ibase=8;' | b ``` 別解(山田)$ cut -c8- oct.txt | fmt -1 | perl -nle 'printf pack("s",oct($_));' ``` + +### 読者別解 + + by [ktrarai](https://github.com/ktrarai) + +``` +$ sed -E 's/^.{7}//; s/[^ ]+/0&/g' oct.txt | xargs printf '%04x' | sed -E 's/(..)(..)/"\\x\2\\x\1"/g' | xargs printf +``` From 24d9a222d7f276c563690871fbebec580f10b701 Mon Sep 17 00:00:00 2001 From: ktrarai Date: Thu, 13 Aug 2026 11:15:24 +0900 Subject: [PATCH 3/3] =?UTF-8?q?=E5=95=8F=E9=A1=8C=2088=20=E3=81=AB?= =?UTF-8?q?=E5=88=A5=E8=A7=A3=E3=82=92=E8=BF=BD=E5=8A=A0=E3=81=97=E3=81=BE?= =?UTF-8?q?=E3=81=97=E3=81=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 画素のデータの取り出しに `od` コマンドを使ってみました。 --- answer/88.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/answer/88.md b/answer/88.md index ea03ff6..ca1ed48 100644 --- a/answer/88.md +++ b/answer/88.md @@ -8,3 +8,11 @@ $ cat image_masked.bmp | xxd -b -c1 | sed -n '139,$p' | sed -n '1~3p' | awk '{pr 別解1(上田)$ tail -c $((64*64*3)) image_masked.bmp | xxd -c1 -b | awk 'NR%3==1{a+=a+$2%2}!(NR%24){printf("%02x",a);a=0}' | xxd -r -p 別解2(田代、山田)$ xxd -c 1 -b -s $(xxd -p -u -c 1 -s 10 -l 4 image_masked.bmp | tac | tr -d '\n' | dc -e'16i?p') image_masked.bmp | awk 'NR%3==1{printf substr($2,8,1)}' | dc -e'2i?P' ``` + +### 読者別解 + + by [ktrarai](https://github.com/ktrarai) + +``` +$ cat image_masked.bmp | od -A n -j 10 -N 4 -t u4 | xargs -I @ od -A n -j @ -t u1 -v -w3 image_masked.bmp | awk '{ b += b + $1 % 2 } ! (NR % 8) { printf("\\\\x%02x", b); b = 0 }' | xargs echo -ne +```