プログラミングのお題スレ Part9 [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
2016/12/01(木) 16:58:30.97ID:gTkHDluD
プログラミングのお題スレです。

前スレ
プログラミングのお題スレ Part8©2ch.net
http://echo.2ch.net/test/read.cgi/tech/1444216746/

【出題と回答例】
1 名前:デフォルトの名無しさん
  お題:お題本文

2 名前:デフォルトの名無しさん
  >>1 使用言語
  回答本文

【ソースコードが長くなったら】 (オンラインでコードを実行できる)
http://ideone.com/
http://codepad.org/
http://compileonline.com/
http://rextester.com/runcode
http://runnable.com/
http://code.hackerearth.com/
http://melpon.org/wandbox
https://paiza.io/

宿題は宿題スレがあるのでそちらへ。
2016/12/01(木) 19:14:53.02ID:sow3BhsA
即死回避
2016/12/01(木) 21:04:32.24ID:bG1bMw/g
puts 'そ'
2016/12/01(木) 22:56:02.34ID:sN9AIsZM
printfn "れ"
2016/12/01(木) 23:26:28.91ID:Vh7HCfjU
http://pc10.2ch.net/test/read.cgi/tech/1169413998/656
この問題
2つの1バイトのビットパターン b,w (b&w == 0) に対して
r = base[b|w]+b (or base[b|w]+w)
を重複なく定める配列

6668まで縮める配列を見つけたけどもっと縮める或は6561ぴったりにする配列はあるのだろうか

int base[] = {
612,614,1681,1054,4528,3808,6078,2684,3278,3262,6349,336,5719,4410,6249,
700,1587,1584,5960,2284,4738,3352,6230,2412,4496,3514,5924,516,4770,3546,6636,
2876,4371,3096,6497,1952,5977,3880,5696,2668,6153,4268,5708,320,6235,3984,6182,
812,4354,4282,6549,1576,5713,3384,6541,2372,6029,4350,6425,1508,6155,4090,6605,
1760,3620,3496,5182,692,6058,3612,6094,1020,3694,3774,6317,580,4732,3480,6217,
716,6260,3740,5672,1416,6050,3768,6086,2180,6254,3674,6256,1288,6048,3898,6284,
2844,6522,2968,5680,1936,5711,3864,6142,1132,6093,3646,6313,564,6169,3936,6297,
1140,6510,4226,6489,2156,6508,3192,6514,2540,6025,4222,6413,1572,6027,4048,6380,
2716,4396,3266,5559,548,4690,3712,5628,980,5319,3246,5555,368,4540,3214,5567,
908,5380,3258,5800,1544,4876,3320,4938,972,5436,3486,5828,1512,4706,3290,5491,
2308,4693,3250,4755,1980,5833,3792,5791,1912,5285,4204,5281,1956,5769,3198,5265,
1888,4691,4218,5866,1960,5860,3728,5839,2348,5862,3450,5636,256,4428,4026,5201,
1696,4947,3500,5150,568,4969,3456,4961,556,4945,3642,4977,464,4636,3658,4993,
876,4955,3608,5640,1424,4682,3512,4906,2148,5410,3390,5376,1284,5404,3802,5459,
1252,4685,2952,5146,1908,5721,3472,5122,996,4701,4176,4949,448,4620,4188,5130,
732,4699,2944,5792,2064,5735,3200,4866,2468,5374,2940,4687,260,4426,2942,4427,0
};
2016/12/02(金) 00:12:44.35ID:gTW8SJ/a
リンク開けねーし日本語意味不明だし
2016/12/02(金) 00:32:31.53ID:IjczpQdN
二つの2^8の形で表されている実質3^8の状態を一回の256要素の配列の参照と加算で
0から6561になるべく近いユニークな数に変換するその配列を求めるって問題

for (w = 0; w < 256; w++) {
for (b = 0; b < 256; b++) {
if ((b & w) == 0) {
if (++a[base[b | w] + b] > 1)
printf ("err\n");
}
}
}
これをエラーが出ないように通す配列
2016/12/06(火) 09:57:55.18ID:4tk1iq5o
>>1おつ
9デフォルトの名無しさん
垢版 |
2016/12/07(水) 14:23:07.62ID:ltGABuaa
景気付けにどうぞ

お題:以下の数列を出力するプログラム
[0, 10, 1110, 110, 2110, 122110, 11222110, 2122110, 1211222110, 11122122110,...]
2016/12/07(水) 18:06:29.71ID:qM0eFzSC
法則性が分からん
2016/12/07(水) 19:07:54.18ID:ijEXmeus
>>9 Java
http://ideone.com/SjEe5N

>>10と同じで法則性考えるのに時間がかかったわ
2016/12/07(水) 19:15:52.19ID:Gz2S0y7j
>>9 Nim
https://ideone.com/WLvRqB
2016/12/08(木) 00:20:55.59ID:Gvasb8BC
>>9
・法則見つけた瞬間までがピーク
・実際書くと何一つスッキリ書けなくて悔しい
https://ideone.com/n0RoNr

[
2016/12/08(木) 00:21:30.57ID:Gvasb8BC
>>9 ruby
・法則見つけた瞬間までがピーク
・実際書くと何一つスッキリ書けなくて悔しい
https://ideone.com/n0RoNr

["0", "10", "1110", "110", "2110", "122110", "11222110", "2122110", "1211222110", "11122122110", "12211222110", "11222122110"]
2016/12/08(木) 00:53:14.68ID:T7wNCBuS
>>9 ruby ちょい整理
https://ideone.com/kyw9bm
2016/12/08(木) 22:20:30.70ID:eRjONenV
・前項の数字の1の位から順に見てって、数字が連続する数を数えていく。
・数字とその連続数を1の位から順に埋める
・3の数字は削除する
2016/12/09(金) 16:43:25.82ID:pZMdQcgu
お題: 文字列に含まれる複数のURLをHTMLのaタグで囲って出力してください。詳細な仕様はないです。
例: http://ideone.com/NY2ooA
2016/12/09(金) 21:12:11.14ID:Ees/IyTq
例に出されたURLも不正だし
>詳細な仕様はないです。
となると判別不能では
2016/12/09(金) 21:52:57.66ID:BOiFZI5h
>>9 Nim
あまりに不細工だったので書き直し
https://ideone.com/9q80v4

正規表現使うバージョン(ただしideoneは古すぎてコンパイルできない)
https://ideone.com/01ktu2
2016/12/10(土) 04:17:33.77ID:mNmdekz4
イデオンって投稿時にURL置換するんだよな。
2117
垢版 |
2016/12/10(土) 11:48:18.29ID:E4ED1H/i
ideone.comをフィルターしてるのかと思ったらURL全般だめっぽい
2016/12/11(日) 18:00:53.14ID:RSXbZT65
>>9 Perl
use feature qw{:5.16};
sub {
$_ = join'', @_;
exit if length > 12;
say;
@_ = ();
while (/((.)\2*)$/) {
$len = length($1);
$len = '' if $len > 2;
unshift @_, $len . $2;
$_ = $`
}
goto __SUB__;
}->(0);

無名関数の末尾再帰を使って記述してみました。
2016/12/13(火) 23:58:53.18ID:AlD2ABgf
お題:C言語に関する質問に答えられる人工知能を作れ。
2016/12/14(水) 02:25:35.75ID:EQpNWDBR
自分で作れ
2016/12/17(土) 22:23:37.55ID:zexuiF2f
案1 Amazon Mechanical Turk を使う。
案2 知恵袋に投げて、回答を転記する。
案3 IBM Watson 使う。
2016/12/17(土) 22:35:16.13ID:R0k7IOIa
大穴 自分の脳をささげる。
2016/12/19(月) 21:40:29.23ID:KFYYsgKs
入力音声を2chのスレに書き込む
レスがあったら音声出力する
処理時間→数分〜数日
2016/12/19(月) 22:14:03.89ID:TQpl8Z1r
お題:ペントミノパズルの12種類のピースを表示する
2016/12/20(火) 00:24:55.91ID:j+0pMEUE
>>28 bash
http://ideone.com/51ZjFV

端末でどうぞ
2016/12/20(火) 23:33:43.23ID:kU3OD1WB
お題:ペントミノパズルの全解を列挙する
2016/12/31(土) 18:31:14.25ID:nvhfPpJn
瞬速年忘れ問題
2017は素数か?素数なら何番目か?
2016/12/31(土) 19:13:55.05ID:39E0aGGL
>>31
C
http://ideone.com/bUbh6M
2016/12/31(土) 19:23:15.93ID:39E0aGGL
たった今一部訂正
2016/12/31(土) 22:12:03.44ID:FA/ffAJp
>>31
同じくC
みなさん今年はお世話になりました
https://paiza.io/projects/Sio8sqlqmX547VHnZkpj_Q
2016/12/31(土) 22:16:03.44ID:oE9oDlU2
ああ、2017ぐらいなら何の工夫もせず力技でごり押ししても大丈夫なのか。
そりゃそうだなw

しかし俺は大みそかに何でこんなスレ覗いてるんだw
2016/12/31(土) 22:56:06.40ID:07cXWtfS
>>31 Emacs Lisp

(require 'cl-lib)

(defun a (x)
(cl-assert (and (integerp x) (> x 1)))
(let ((l (let ((max-lisp-eval-depth most-positive-fixnum)
(max-specpdl-size most-positive-fixnum))
(b (cl-loop for i from 2 to x collect i)))))
(when (= (car (last l)) x) (length l))))

(defun b (l)
(when l
(cons (car l) (b (cl-remove-if (lambda (x) (= (% x (car l)) 0)) (cdr l))))))

(mapcar (lambda (x) (cons x (a x))) '(2 3 4 5 2017))
((2 . 1) (3 . 2) (4) (5 . 3) (2017 . 306))
2016/12/31(土) 23:05:34.75ID:39E0aGGL
>>32で9999991(664579番目の素数)を計算させたら
14.708sかかった
>>34では0.391s
(Athron X2 1.8GHz)
2017/01/01(日) 11:09:07.28ID:IDYigKuX
>>31 Squeak/Pharo Smalltalk

(Integer primesUpTo: 2017+1) indexOf: 2017 "=> 306 "
2017/01/01(日) 12:49:27.41ID:AcyWguNB
>>31 ruby2.0.0
require 'prime'
def f9031(n)
Prime.prime?(n) && Prime.each_with_index.find {|p, _| p == n}
end
p f9031(4), f9031(2), f9031(2017)

false
[2, 0]
[2017, 305]
2017/01/02(月) 13:41:39.67ID:jOTKTTu2
>>31
Bash
seq 2017 | factor | awk '{happy = $1;new=0}NF==2{year++;new=1} END{
print happy,new?year "th":"no","prime"}'
2017/01/02(月) 15:29:42.51ID:h8C28I9Z
お題:与えられたクレジットカードの番号が正しいかどうか判定するプログラム。
2017/01/02(月) 15:34:59.42ID:h8C28I9Z
お題:個人情報(氏名、年齢、住所、電話番号)のダミーデータ(偽物のデータ)を大量に作成するプログラムを作れ。
2017/01/02(月) 15:41:47.73ID:h8C28I9Z
上げまして
2017/01/02(月) 15:47:49.69ID:jOTKTTu2
>>42
wget -r -l 0 URL で適当なサイトから住所のデータを持ってきてシャッフルしダミーデータを生成
2017/01/02(月) 16:37:06.06ID:4fVv1Ig/
正しいかどうかはクレカ会社でないとわからない
Luhnアルゴリズムの計算だけでいいならわりと楽だけど
2017/01/02(月) 17:26:44.05ID:h8C28I9Z
>>45
正論だね。じゃあルーンのアルゴリズムだけにしましょう。
2017/01/02(月) 17:28:27.34ID:h8C28I9Z
>>44
住所と電話番号の関係についてもっとよく考えて下さい。
2017/01/02(月) 17:39:17.52ID:fYcUjGFM
ダミーだから、実在する住所、通話可能な番号は許可しないんだよな?
2017/01/02(月) 18:22:02.26ID:h8C28I9Z
>>48
それはちょっと難しいだろう。実在するかどうやって確認するのかい?
2017/01/02(月) 18:27:21.29ID:h8C28I9Z
住所や電話番号の一部を伏せ字にすれば迷惑が掛からないとは思うが。。。
ダミーデータの用途によるんだよね。データベースのテスト用とか、●●●●用とか。
2017/01/02(月) 18:48:13.86ID:h8C28I9Z
ヒント:住所テキストデータの意味の定義は郵便局が行っている。
2017/01/04(水) 12:00:38.64ID:y99Ue0/2
お題:□に自然数を入れて式を成立させる。^は、べき乗。
□^□+□^□=2017
2017/01/04(水) 12:44:11.80ID:WgerS0Nf
回答無限個あるけどいいの?
2017/01/04(水) 13:15:36.49ID:UpZyqzsr
なにわろてんねん
2017/01/04(水) 18:33:26.02ID:dwq5ZcuT
http://ideone.com/BinLDz
C++??なんかへんな問題だな。
2017/01/04(水) 18:36:48.39ID:83LRywdJ
1^X+2016^1=2017
という形の解が無数に存在する。
これに対する制限がなければ面白くない。
5752
垢版 |
2017/01/04(水) 19:17:06.25ID:y99Ue0/2
では□に入れるのを2以上の自然数に変更させてください
2017/01/04(水) 23:01:48.48ID:tU35eaIW
>>57
C++
自然数nがa^b (a>=2,b>=2)で表せるかどうか判定する関数(isFact)の
キャストが糞だから誰かいい書き方教えてください…
http://ideone.com/cB1Ncw
2017/01/04(水) 23:17:21.92ID:dwq5ZcuT
>>57
http://ideone.com/LbWS0f
C++。初期条件変更。
答えがバッサリ減った。
2017/01/04(水) 23:37:14.33ID:I0E1npQu
>>57
C
http://ideone.com/v5btSV
2017/01/04(水) 23:41:45.40ID:I0E1npQu
パフォーマンス改良
http://ideone.com/WDu0Ox
2017/01/04(水) 23:54:08.76ID:dwq5ZcuT
>>57
http://ideone.com/uxu5Bl
C++。頑張って最適化。これ以上はアルゴリズム変えないと大変。
2017/01/05(木) 00:33:24.56ID:FeYPKi0Y
>>57 Java
https://ideone.com/vRiP1c
2017/01/05(木) 01:06:45.10ID:FeYPKi0Y
>>57 Java
http://ideone.com/hNhAMC

>>63の ArrayList<String>[] list = new ArrayList[n]; がすんげぇメモリの無駄に思えたので
2017/01/05(木) 01:50:33.81ID:Tpy8rHG5
>>57
C++
Σ_i=1~m □^□ = nに拡張してみた
http://ideone.com/KKHS6o
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況