[過去ログ] プログラミングのお題スレ Part13 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
1(5): 2019/02/03(日)11:21 ID:72eosYJ+(1/3)調 AAS
プログラミングのお題スレです。
【出題と回答例】
1 名前:デフォルトの名無しさん
お題:お題本文
2 名前:デフォルトの名無しさん
>>1 使用言語
回答本文
結果がある場合はそれも
【ソースコードが長くなったら】 (オンラインでコードを実行できる)
https://ideone.com/
http://codepad.org/
http://compileonline.com/
http://rextester.com/runcode
https://runnable.com/
https://code.hackerearth.com/
http://melpon.org/wandbox
https://paiza.io/
宿題は宿題スレがあるのでそちらへ。
※前スレ
2chスレ:tech
4(3): 2019/02/03(日)13:16 ID:jFMT64Yy(1/2)調 AAS
平方数の判定は、たとえばmod 10だと、
1と4と5と6と9に限るってのを利用すると、違う場合は判定が速いんだろ。
mod n で複数やる。
1=1^2
4=2^2
9=3^2
6=4^2
5=5^2
6=6^2
9=7^2
4=8^2
1=9^2
14(4): 2019/02/03(日)22:02 ID:I0qputsI(4/4)調 AAS
>>13
>>7で64ビット以上の数も判定出来てるけど。。。
(0が偶数ならTrue、奇数ならFalse)
小数点以下が0か(n.0かn.41421356みたいな形か)どうか見てるだけだし。
この辺はsqrt関数の性能に依存するだろうけど。
n = 100000000000000000000
m = 10000000000000000000
print(isSqr(n))
print(isSqr(m))
出力
True
False
50(5): 2019/02/09(土)06:52 ID:y7fm8J5o(1/2)調 AAS
なんでも放題にすればいい
お題
平方数は 256で割るとあまりの
パターンが44種類になるという。
この44種類を求める。
62(5): 2019/02/10(日)12:16 ID:8pY6FeJB(1/3)調 AAS
お題
ある数 n とする。
下位から24bit区切りの数を足し合わせてからmod 2^24-1 した数が、元の数nのmod 2^24-1 と一致することを確認しなさい。
75(3): 2019/02/11(月)00:35 ID:8Hdd2FlG(1/11)調 AAS
>>62
ガウス少年が見出したように
Σ1,2,…,n-2,n-1=n *(n +1) /2
なので、
n の mod 2^24-1
と
Σ1,2,…,n-2,n-1 =n *(n +1) /2 の mod 2^24-1
が等しいのは自明だと思うけど、
そういう、ちょっとした数学を使わず
Σ1,2,…,n-2,n-1
をloopで和を算出し mod 2^24-1 して比較する
n の mod 2^24-1 と比較する
プログラムを作れという題なんだろうか…
99(4): さまよえる蟻人間 ◆T6xkBnTXz7B0 2019/02/11(月)17:37 ID:adj8EvAq(1/3)調 AAS
お題: 日本語文字とカッコ { } とスラッシュ(/)で構成された入力文字列Sが与えられる。{ }で囲まれ、かつ
スラッシュで区切られた部分文字列について、それぞれ場合分けを行って、複数の文字列のリストに展開して改行区切りで出力せよ。
カッコの対応が間違っている場合はERRORを出力せよ。
(例1) {ひまわり/あさがお}は{植物/花}です。
(出力結果)
ひまわりは植物です。
あさがおは植物です。
ひまわりは花です。
あさがおは花です。
113(8): 2019/02/11(月)20:48 ID:uHNor3GB(1)調 AAS
お題:Aが真であるならばBが真である ことをプログラムしなさい。
156(4): 2019/02/13(水)05:57 ID:ttYQgqMy(1/3)調 AAS
お題
print(a)
のように変数の宣言や代入なしで
使用するとどうなろか
176(6): 2019/02/13(水)21:01 ID:7GscGWa9(1)調 AAS
お題
長方形のサイズが指定された時、その長方形に敷きつめられるパターン全て列挙
回転もおkかは好きに定めていい
例: 2 3
#
###
#
#
###
###
178(3): 2019/02/14(木)00:46 ID:QGThOkDI(1/6)調 AAS
>>176 なんか図が良くわからないな。
2 x 3 なら、そのパーツは, / は空きだとすると
*//
***
と
/**
――-
*//
*//
と
/**
/**
―――
*//
**/
と
/**
//*
――
***
***
――-
みたいな感じかな。パーツの回転を許す許さないは自由という事。
3 x 3 の時は斜めのパーツも許すんだろうね。
*//
/*/
//*
これが一つのパーツ?
199(3): 2019/02/14(木)13:56 ID:iDdALKjs(1/2)調 AAS
abcd
badc
abab
cdcd
aaba
babb
abbb
aaab
同じパターンで埋めるのって色々できそうだけどこういうの全部いいの?
230(4): 2019/02/16(土)12:54 ID:8ZVYBrON(1)調 AAS
お題:バブルソートを実装せよ
232(5): 2019/02/16(土)16:42 ID:hxDCwUVz(1)調 AAS
お題:数値Xを4つの方法で整数に丸めよ
(1) 0に向かう
(2) 0から遠ざかる
(3) 正の無限大に向かう
(4) 負の無限大に向かう
X = 0.5
=> 0 1 1 0
X = -1.1
=> -1 -2 -1 -2
X = 3
=> 3 3 3 3
258(3): さまよえる蟻人間 ◆T6xkBnTXz7B0 2019/02/20(水)00:58 ID:5PEVWiZL(1)調 AAS
お題: URLで場所を指定された、インターネット上のテキストファイルをダウンロードするプログラム。
268(3): 2019/02/20(水)05:32 ID:B2QSVSiS(1/3)調 AAS
PowerShell にも、curl, wget ある
get-alias (gal)
curl -> Invoke-WebRequest
wget -> Invoke-WebRequest
と言うことは、Ruby からも、そのコマンドを呼べる
279(13): 2019/02/21(木)18:54 ID:1axkeZoV(1/2)調 AAS
お題:リスト等を", "で結合して表示せよ。ただし最後は" and "で結合する。
https://ideone.com/pVuO7T
313(14): 2019/02/22(金)19:43 ID:FMSx1nas(1)調 AAS
お題:21の階乗を計算して表示せよ。
https://ideone.com/gQAd37
316(5): 2019/02/22(金)21:42 ID:THqrb0iU(1)調 AAS
お題:
長方形のフィールドが与えられる。フィールド上では上下左右に移動することができる。
各マスの数字はそのマスに入るためのコストを表す。
SからGに向かうときの最小コストを求めよ。(SとGのコストは0とする)
S5111
1115G
=> 6
S1111
98642
G1111
=> 9
13457689768914512071934123457
G4578901258901212890361125312
37890423076834712378998725463
16890102569615902061456259893
34582934765923812893461515232
57896123896741378915691551697
89013897456123457162501835479
21389046013845610034623405686
8902346203948612341356362342S
=> ?
335(6): 2019/02/23(土)12:44 ID:W0y17tlk(1/2)調 AAS
python3
標準ライブラリ内の数学関数の例
import math
print(math.factorial(21))
そうじゃない例
from functools import reduce
print(reduce(lambda x,y:x*y,range(1,22)))
ちょっと高度化したお題
素数階乗n#を実装せよ
ただし素数階乗とは与えられた整数n以下のすべての素数の積である
例
1#=1
3#=4#=6
5#=30
358(3): さまよえる蟻人間 ◆T6xkBnTXz7B0 2019/02/24(日)05:55 ID:xnYazQgz(1/3)調 AAS
お題: 3分タイマーを作れ。3分間待って、音を鳴らすか、画面に「BEEP!」と表示せよ。ただし、CPU時間を無駄に消費してはならない。
359(4): さまよえる蟻人間 ◆T6xkBnTXz7B0 2019/02/24(日)06:09 ID:xnYazQgz(2/3)調 AAS
お題: スリープソートを実装せよ。
364(14): 2019/02/24(日)08:59 ID:k3GW1oFG(1)調 AAS
お題
与えられた文字列を縦に表示する
入力
hello
出力
h
e
l
l
o
394(5): 2019/02/26(火)02:14 ID:Jyzj3K2Z(1)調 AAS
お題:OS名を出力する
410(7): 2019/02/27(水)19:25 ID:sZAuINQ9(1)調 AAS
お題
英今文字からなる文字列が与えられる。
各文字の大文字、小文字の組み合わせをすべて求める。
"ab"の場合
ab
aB
Ab
AB
411(3): 2019/02/27(水)19:42 ID:haTnnqie(2/2)調 AAS
エーコン文字って何
441(10): 2019/02/28(木)21:58 ID:dSln4xk/(1)調 AAS
お題
四角形の羅列を、'#'と'.'を使った表現から罫線を使った表現に変換せよ
(例)等幅フォントで見てください
#
↓
┌┬┐
├┼┤
└┴┘
#..###.####.
..#.....##.#
#.#....#.#.#
....#.#...#.
┌┬┐ ┌┬┬┬┬┬┐ ┌┬┬┬┬┬┬┬┐
├┼┤ ├┼┼┼┼┼┤ ├┼┼┼┼┼┼┼┤
└┴┘ ┌┬┼┴┴┴┴┴┘ └┴┼┼┼┼┼┴┼┬┐
├┼┤ ├┼┼┼┤ ├┼┤
┌┬┐ ├┼┤ ┌┬┼┴┼┼┤ ├┼┤
├┼┤ ├┼┤ ├┼┤ ├┼┤ ├┼┤
└┴┘ └┴┘ ┌┬┐ ┌┬┼┴┘ └┴┼┬┼┴┘
├┼┤ ├┼┤ ├┼┤
└┴┘ └┴┘ └┴┘
494(7): 2019/03/04(月)18:59 ID:R4eMfGlu(1)調 AAS
お題 全角空白区切のCSV
カレントディレクトリにあるCSVファイルを読み込み、指定されたカラム名のデータの合計を求める。
1レコード目にはカラム名がある。
区切り記号は全角空白とする。 データの数字は全てASCII数字だとする。
CSVファイル内のデータ例
カラム1 カラム2 カラム3 カラム4
1,0 2.0 3.0 4.0
2.1 3.1 4.1 5.1
------データ例終わり
出題 カラム3 の合計を求めよ。
解答例 カラム3 = 7.1
515(5): 2019/03/05(火)12:09 ID:KQ31R4yU(1/2)調 AAS
お題1: テトリスタイリング問題を解決しろ
ここでテトリスタイリング問とは任意の図形のアスキーアートを入力すると
全てのテトリスのブロックに隣接するブロックの種類が異なるようにタイリングしたアスキーアートを出力する
問題である
お題2: テトリスタイリングNブロックス問題を解決しろ
ここでこの問題は上の問題でブロックの種類の数Nを最小にする問題である
例:
入力:
****
****
****
出力:
1002
1002
1122
516(3): 2019/03/05(火)12:21 ID:WJ/srpVX(1)調 AAS
>>515
これじゃダメなのか?
1011
1001
1101
519(3): 2019/03/06(水)01:19 ID:tTGpH/KM(1)調 AAS
>>518
https://upload.wikimedia.org/wikipedia/commons/9/9a/Tetrominoes_letter_oriented.png
片面テトロミノ(画像参照)を回転させて指定の形に詰め込め
ただし、同じテトロミノを隣接させてはいけない。 ってことじゃろ
515の出力例でいうと、
0は画像の水色、1は黄色、2は紫色の奴ってこと
544(8): 2019/03/07(木)17:22 ID:bbRk4M8e(1)調 AAS
お題
R言語にandmaginsとうう関数がある。
m行n列の行列を渡すと行ごとの合計と列ごとの合計を追加して
(m+1)行(n+1)列の行列を返す。
同様の関数をつくる。
1 2 3
4 5 6
が
1 2 3 6
4 5 6 15
5 7 9 21
となる
547(11): 2019/03/08(金)00:35 ID:N66/0TP0(1/2)調 AAS
大文字小文字だけが異なる、ファイル名を見つける
入力
aB.txt
Ab.txt
xx
cd
cD
CD
出力
aB.txt : Ab.txt
cd : cD : CD
559(5): 2019/03/08(金)19:17 ID:ru9qZk5w(1)調 AAS
お題:
N人の人物がある部屋に出入りしています。
i番目の人は時刻a[i]に入室し、時刻b[i]に退室します。(1 <= a[i] < b[i])
すべての人は入退室時に以下の通り行動します。
・入室時に、照明がOFFならば照明をONにする。
・退室時に、室内に自分以外に誰もいなければ照明をOFFにする。
最初は照明がOFFになっていて室内には誰もいません。
複数の人物が同時に入退室することはないものとします。
照明がONになっている時間の合計を求めなさい。
a={1,3,5}
b={2,4,6}
=> 3
a={1,2}
b={5,6}
=> 5
a={100,1,2}
b={105,3,4}
=> 8
571(16): 2019/03/09(土)19:49 ID:R3sqYFdd(1)調 AAS
お題:文字列と数値nが与えられるのでn番目の文字とそれ以外の文字を上下にスライドさせて表示する
入力
abc 2
出力
*b*
a*c
601(6): 2019/03/11(月)10:48 ID:u4Ymakq9(1/2)調 AAS
お題: 下の例のような入力から例の出力のアスキーアートを出力する。それ以外は自由
例:
入力: >>>>>vvvvv<<<<^^^^
出力:
>>>>>
^****v
^****v
^****v
^****v
<<<<v
623(7): 2019/03/11(月)23:02 ID:GdRfR4uu(1)調 AAS
以下の整形式の.ini ファイルから、すべての値を取得して、
「セクション名 : キー名 : 値」で表示する
[sec1]
key1=val1
[sec2]
key2=val2
632(3): 2019/03/12(火)19:26 ID:mUEXbKn8(1)調 AAS
お題
数列a[i]を考える。
a[0] = p
a[i+1] = q * a[i] + r
[入力]
p q r n
(p,q,r,nは整数)
(0≦p,q,r≦99)
(0≦n≦10^10)
[出力]
a[n] mod 13 を求めよ
1 2 0 8
=> 9 (2^8 mod 13)
1 0 99 0
=> 1
1 2 3 2
=> 0 (a[0]=1, a[1]=2*1+3=5, a[2]=2*5+3=13)
1 3 5 10000000000
=> ?
653(11): さまよえる蟻人間 ◆T6xkBnTXz7B0 [age] 2019/03/13(水)23:29 ID:KwyST1w4(1)調 AAS
お題: ピリオド区切りの二つのバージョン番号を比較し、大小関係を判定した結果を-1, 0, 1のいずれとして返せ。
0.1.2 > 0.0: 1
1.2.3 < 1.3: -1
0.0.0 == 0.0: 0
666(4): 2019/03/14(木)18:00 ID:38t26SL0(1/2)調 AAS
お題: 何も出力しないプログラム自身のコードをソートするとhello worldを出力するプログラムを作れ
667(3): 2019/03/14(木)18:07 ID:YPV07ntD(1/3)調 AAS
>>653 # Python
def cmp(v0,v1):
if v0==v1: return 0
else: return 1 if (v0 > v1) else -1
print(cmp('1.2.3','1.2') , cmp('1.2.3','1.1.1') ,
cmp('1.1', '1.1') ,
cmp('1.2.3','1.3')
)
# 1 1 0 -1
673(6): 2019/03/14(木)18:58 ID:dvZ8z+Z0(2/2)調 AAS
お題:フィボナッチ数列を最初の10個表示せよ
ruby
https://ideone.com/ewyP50
perl6
https://ideone.com/O3tVZj
675(3): 2019/03/14(木)18:59 ID:38t26SL0(2/2)調 AAS
お題: 3つの数の最小値を1回の分岐で決めろ!
681(4): 2019/03/14(木)20:16 ID:0tbf1s3D(1)調 AAS
お題:“木”という漢字を使って以下のようなフラクタル図形を描け
n=0
木
n=1
-木
木木
n=2
---木
--木木
-木--木
木木木木
n=3
-------木
------木木
-----木--木
----木木木木
---木------木
--木木----木木
-木--木--木--木
木木木木木木木木
※ハイフンはスペースだと思ってください
706(4): 2019/03/15(金)17:37 ID:g4S7Lu9n(1)調 AAS
お題
2桁16進数化したものをつなげた形でIPアドレスが与えられる。(例:192.168.0.1 -> C0A80001)
与えられたIPアドレスからホスト名を逆引きせよ。
例
08080808 -> google-public-dns-a.google.com
9da6e21a -> www.cnn.com
723(5): 2019/03/17(日)06:18 ID:k04EM+xl(1/4)調 AAS
2桁までの足し算の筆算を表示せよ。
例:
29
+15
----
14
3
----
44
29
+ 5
----
14
2
----
34
746(7): 2019/03/21(木)13:37 ID:p+hkSRzH(1)調 AAS
お題
長方形の盤で左上から上下左右に一マスずつ移動して全てのマスを
辿る。
移動の順番を表した数字を向きと終点を表す文字(↑↓←→★、
上下左右終、UDLRG、^V<>Gなど)に変換する。
入力
1 4 5 6
2 3 8 7
15 14 9 10
16 13 12 11
出力
↓→→↓
→↑↓←
↓←→↓
★↑←←
765(3): 2019/03/24(日)13:31 ID:Vlgf6sT0(1)調 AAS
お題 :次のようなジョブパラメータで表されるジョブ(製造工程)があります。全て完成するための最小時間とマシンスケジュールを求めてください。貧乏なので同じ番号のマシンは一台しかありません。{A, B}とあれば;Aマシン番号、B:所要時間
int job_param[JOBNUM][STP][2] = {
{{3, 10}, {4, 10}, {2, 12}, {0, 18}, {1, 4}},
{{1, 11}, {2, 6}, {3, 2}, {4, 8}, {0, 15}},
{{2, 10}, {4, 16}, {3, 2}, {1, 8}, {0, 14}},
{{2, 15}, {1, 12}, {0, 16}, {3, 6}, {4, 17}},
{{4, 14}, {0, 2}, {1, 15}, {2, 6}, {3, 10}}};
831(5): 2019/04/24(水)20:52 ID:NALZs80Z(2/4)調 AAS
お題: 簡易なテーブルを綺麗に整形する
余力があればカラムの左揃え、右揃えをオプションで選択できるようにする(出力は中央揃え)
入力:
a|aaaaa|bb
ccc|ddd|ee
出力:
**a***|*aaaaa*|***bb*
------+-------+------
*ccc**|**ddd**|***ee*
875(13): 2019/05/09(木)19:00 ID:n0QdGvKz(1)調 AAS
コラッツ数列を作る関数chainを書け
コラッツ数列の定義
任意の自然数から開始する
数が 1ならば 、終了
数が偶数なら 、 2で割る
数が奇数なら 、 3倍して 1を足す
新しい値でこのアルゴリズムを繰り返す
使用例
>chain 10
[ 1 0 , 5 , 1 6 , 8 , 4 , 2 , 1 ]
>chain 1
[ 1 ]
>chain 30
[ 3 0 , 1 5 , 4 6 , 2 3 , 7 0 , 3 5 , 1 0 6 , 5 3 , 1 6 0 , 8 0 , 4 0 , 2 0 , 1 0 , 5 , 1 6 , 8 , 4 , 2 , 1 ]
877(16): さまよえる蟻人間 ◆T6xkBnTXz7B0 2019/05/09(木)22:20 ID:sZO2t0w0(1)調 AAS
お題: 改行とスペースを含むASCII文字列が与えられる。
改行とスペース以外の各印字可能文字の位置を以下のように順番に出力せよ。
(入力)
a b c
d
(出力)
[a, 0, 0]
[b, 2, 0]
[c, 5, 0]
[d, 0, 2]
888(6): さすらいの蟻人間 ◆T6xkBnTXz7B0 2019/05/10(金)14:51 ID:CF7UUf9v(1)調 AAS
お題: >>877 の入出力を逆転。
913(3): 2019/05/15(水)23:43 ID:jmndeABE(1)調 AAS
>>877 c
https://ideone.com/tIcQPK
>>877 ruby
https://ideone.com/qMREyy
>>877 ocaml
https://ideone.com/uaNmRF
>>877 octave
https://ideone.com/psnXl5
920(12): 2019/05/16(木)20:28 ID:3sIrlJF4(1)調 AAS
お題
整数の数列が与えられるので、各値の大小関係を変えないように値をなるべく小さくせよ
ただし1番小さい要素は1にすること
入力
-6 3 9 5 3 -7
出力
2 3 5 4 3 1
949(5): 2019/05/17(金)16:18 ID:X2USxdO3(1)調 AAS
お題:自然数を隙間なく自分自身以外の数に対応させよ。
978(4): 2019/05/18(土)10:52 ID:0WkfcTHM(1/3)調 AAS
>>971
1. すべての自然数nに対してf(n)≠n
2. 自然数m,nがm≠nを満たすときf(m)≠f(n)
を満たすような関数f(n)を作れってこと
例えば
1. 入力が1のとき出力は1以外
2. 入力が1のときと2のときで出力が同じになってはダメ
990(3): 2019/05/18(土)15:57 ID:0itJzGag(1)調 AAS
ハローワールドなら任せて欲しい
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.073s