【問題のみ】第24回◯◯o◯裏番組シェル芸勉強会
Sat Aug 27 13:42:24 JST 2016 (modified: Sat Sep 30 16:15:34 JST 2017)
views: 2583, keywords:勉強会,シェル芸 この記事は最終更新日が7年以上前のものです。
解答はこちら
イントロ
問題で使うファイル等
GitHubにあります。ファイルは
https://github.com/ryuichiueda/ShellGeiData/tree/master/vol.24
にあります。
クローンは以下のようにお願いします。
git clone https://github.com/ryuichiueda/ShellGeiData.git $
環境
今回はUbuntu Linux 16.04で解答例を作りました。
Q1
cat Q1
$
玉子 卵 玉子 玉子 玉子 玉子
玉子 玉子 卵 卵 卵 玉子
卵 玉子 卵 玉子 玉子 玉子
卵 玉子 卵 卵 卵 卵 玉子 卵 玉子
上のようなQ1ファイルについて、次のような出力を得てください。
5 卵:1
玉子:3 卵:3
玉子:4 卵:2
玉子:1 卵:5
玉子:2 卵:1 玉子:
Q2
次のようなテキストについて、繰り返し出てきた文字の2つ目以降を省いて出力してください。例えばQ2のファイル
cat Q2
$ へのへのもへじ
の場合、「へのもじ」が正解の出力になります。
Q3
cat Q3
$
金 日成
キム ワイプ
金 正日
キム タオル 金 正男
というデータを、
%%
キム タオル
キム ワイプ%%
金 正男
金 正日
金 日成%%
というように第一フィールドをキーにして%%でレコードを区切ってください。awkを使ってできた人は、awkを使わないでやってみてください。
Q4
Q4.xlsxのA1のセルには数字が書いてあります。その数字を出力してください。A4には文字列が書いてあるので余裕がある人はそれも特定してみましょう。Q5
ファイルQ5について、xに好きな数を代入して各行の式を計算してください。cat Q5
$ x + x^2
x + 1/x
x*x*x
余裕のある人は、例えばxに2を代入したければ、
echo 2 | ... $
というようにecho <代入したい数>から始めてワンライナーで解いてみてください。
Q6
「玉子」と「卵」の数を数えて、数が少ない方を数が大きい方で置換してください。cat Q6
$ 卵卵玉子玉子玉子玉子玉子卵卵卵玉子玉子卵玉子玉子玉子玉子卵卵玉子卵玉子卵卵玉子卵玉子
Q7
次のseq(あるいはjot等)の出力から、各桁の数字の構成が同じもの(例: 11122と22111等)を重複とみなし、除去してください。
seq -w 00000 99999 $
Q8
まず、1〜7を全て含む7桁の整数を全て列挙して、tmpというファイルに出力してください。
次に、相異なる7以下の正の整数a,b,c,d,e,f,gを用いて、
abcd + efg
と表せる素数と、その時のa〜gの数字を全て求めましょう。tmpを用いて構いません。
(参考: 2011年日本数学オリンピック予選第3問から。一部改。http://www.imojp.org/challenge/old/jmo21yq.html)