プログラミングのお題スレ Part11
at TECH
[前50を表示]
850:デフォルトの名無しさん
18/08/29 19:10:03.95 bZ2D0xRL.net
>>830
君が元の問題を書いた人か?
851:デフォルトの名無しさん
18/08/29 19:24:13.92 5cagDv75.net
お題:標準入力から(で始まり)で終わる顔文字が与えられる。この顔文字を太らせて標準出力に出力しなさい。
852:デフォルトの名無しさん
18/08/29 19:40:07.15 e0sa1Xvi.net
>>831
ちげーよ、出題者ならまともな条件追加してるわw
自分では何も提示しないのに難癖つけてくるアホがうざったいだけ
853:デフォルトの名無しさん
18/08/29 19:41:27.76 5CKWgBXh.net
テンソル君頑張ってるね
854:デフォルトの名無しさん
18/08/29 19:53:04.28 5CKWgBXh.net
トランプを並べる問題で
非ユークリッド空間を前提にしちゃう
頭がおかしい人
855:デフォルトの名無しさん
18/08/29 20:01:44.71 F6DjsKzv.net
頓珍漢なオレオレ解釈提示してドヤってる方がウザいわ
856:デフォルトの名無しさん
18/08/29 20:11:16.34 V4Xw96gq.net
>>788
並べるのが矩形に限らないのであれば
>>792のとおり任意の枚数で可能
矩形に並べるとして
枚数が与えられないなら>>793のとおり4枚で可能
与えられるなら>>795のとおり
与えられた自然数を最も僅差の2つの自然数の積で表す問題と同値
ただこの場合、問題文の不備を不問にしても
>並べるトランプは偶数枚
って条件がなぜ必要になるのか疑問が残るが…
いずれにしても問題としては終わってるので
これ以上長引かせるのは不毛
857:デフォルトの名無しさん
18/08/29 22:16:45.79 Nirpjn+4.net
× 問題としては終わってる
○ 人間としては終わってる
858:デフォルトの名無しさん
18/08/29 22:32:57.89 cDvJjkNL.net
どこからも
矩形に隙間なく並べる
とは読めないのだけど
859:デフォルトの名無しさん
18/08/29 22:47:22.89 AXEWk4o3.net
書かれていない条件は勝手に解釈すればいい
その条件の問題を解くのが楽しいと感じるならその条件で回答すればいいだけ
グダグダと問題自体を統一する必要は無い
860:デフォルトの名無しさん
18/08/29 22:49:31.68 cDvJjkNL.net
さすがに非ユークリッド空間は無いだろ
861:デフォルトの名無しさん
18/08/29 23:06:35.04 rr2ZC/zS.net
偶数枚並べるようなゲームを想定してるんでしょ
862:デフォルトの名無しさん
18/08/29 23:10:01.39 cDvJjkNL.net
>>840
「問題を解く」という言葉がふさわしいような条件が見つからないから困っているわけで
863:デフォルトの名無しさん
18/08/30 00:01:13.99 s4UfRJo7.net
面白みが無いならスルーでいいだろ
864:デフォルトの名無しさん
18/08/30 01:37:09.37 qgZ9UxCP.net
>>832
Kotlin
URLリンク(paiza.io)
スペース入れただけなんだけど、これでいいのかな?
865:デフォルトの名無しさん
18/08/30 19:45:18.01 PhGGZV18.net
>>845
OKです
866:デフォルトの名無しさん
18/08/31 20:49:23.29 QC9x0InA.net
>>248
java
pastebin,com/7cnjtkNG
867:デフォルトの名無しさん
18/08/31 21:01:15.01 QC9x0InA.net
>>847
変数宣言を増やせばいくらでも行けるけどこれが限界かも
リフレクションはやっぱりクソだな
868:デフォルトの名無しさん
18/08/31 21:58:19.14 UbfaileO.net
>>248 Squeak Smalltalk, インスタンス変数で254個まで
| obj n limit |
obj := Object new assureUniClass.
n := 0.
[[obj addInstanceVarNamed: 'i', (n := n + 1) asString withValue: n] repeat] ifError: [].
limit := obj class instSize. "=> 254 "
obj instanceVariableValues asArray = (1 to: limit) asArray "=> true "
869:デフォルトの名無しさん
18/08/31 23:18:37.32 hdwU5T2H.net
自然数nに対して
3Σ_{k = 0}^{2n}(-2)^k / (2n + 1)^2
が整数となるnを総て求めよ
870:デフォルトの名無しさん
18/09/01 10:36:15.07 oWRhkMQP.net
数学厨は帰れ
871:デフォルトの名無しさん
18/09/01 10:57:14.89 Wx/QBEc1.net
>>850
数式というか文字が何を表しているのか分からない。最初の { の直前の _ は何を意味するんだ?
更に { } で括った部分と ( ) で括った部分の違いは?
まあわかったとしても解く気は起きないかも知れないので面倒なら解説しなくても良い。
872:デフォルトの名無しさん
18/09/01 11:24:51.31 DlN6jaxu.net
>>850じゃないけど
_はΣの下
^はΣの上
テキスト限定でのよくある表記
873:デフォルトの名無しさん
18/09/01 12:14:11.54 9UhZQst+.net
数学板でお題スレ立てようかと思ったらすでに似たようなスレがあった
面白い問題おしえて〜な 27問目
スレリンク(math板)
874:
18/09/02 01:44:20.01 oSO4LvdH.net
>>796-797
>>808
スレリンク(tech板:53番)
875:デフォルトの名無しさん
18/09/02 04:36:43.72 4Jf6YH6e.net
>>853
そういう意味だとすると>>850はこうかな。
Kotlin
URLリンク(paiza.io)
しかし、本当にこれで全てなのかは不明。
Double 型で計算できる所まで計算して結果が整数の時の n を出してるだけなので。
876:デフォルトの名無しさん
18/09/02 10:05:17.48 jaQJTA9z.net
>>850
(1 + 2 ^ (2n + 1)) / (2n + 1) ^ 2
に変形できる
答えは多分n=1だけだと思う
python3で時間いっぱいまで総当たり
URLリンク(ideone.com)
877:デフォルトの名無しさん
18/09/02 11:43:51.21 /9nCrt4M.net
>>850は数学オリンピックのマスターデーモンだな
答えはn=0, 1のみ
878:デフォルトの名無しさん
18/09/02 16:00:22.41 4Jf6YH6e.net
ごめん。>>856は3倍するのを忘れていた。
879:デフォルトの名無しさん
18/09/02 17:40:51.50 4Jf6YH6e.net
>>856
Forkして3倍にするの入れてみたけど大差ない・・・
URLリンク(paiza.io)
880:デフォルトの名無しさん
18/09/02 17:46:26.05 4Jf6YH6e.net
>>858
あれ?そうなの?
じゃあプログラム何か間違ってん
881:のかなあ?
882:デフォルトの名無しさん
18/09/02 18:31:32.88 jaQJTA9z.net
>>861
double型の精度の問題
計算結果は指数関数が支配しているからnが大きくなると有効桁数が足りなくなる
883:デフォルトの名無しさん
18/09/02 18:47:50.05 4Jf6YH6e.net
>>862
なるほど。とすると32以上はもうダメな値ってことだな。
かといってBigDecimalとか使って延々と計算しても意味ないな。
数学的に答え出てるし。
884:デフォルトの名無しさん
18/09/05 09:52:56.23 lHAOj/Nm.net
プログラミングならここからだな
URLリンク(site.moshimo.com)
885:デフォルトの名無しさん
18/09/08 22:16:42.52 vC/rF1cv.net
質問スレからパクってきた配列の易しい問題
質問者は他レス見るにプログラミング自体経験なさそうだが
893 デフォルトの名無しさん (アウアウカー Sa8f-aTuM [182.250.241.36])[sage] 2018/09/08(土) 21:43:04.65 ID:6/Xg/XCUa
どこで質問するべき内容なのか迷っていたのですが調べているとプログラミング関係のようなのでここで質問させていただきます
例えば
1〜50までの数字の中で数字を10個ランダムで選ぶ乱数ツールは検索するとすぐにでてきます
しかし、自分が求めているものは2つあり
@
1〜50までの数字の中で2.16.22.23.42.50を除いて10個ランダムで選ぶことができるもの
A
1.2.5.6.16.18.20.21.23.28.30.33.39.4047.49.50の選択した数字中から10個ランダムで選ぶことができるもの
@とAで挙げた数字は適当ですが場合によっては@で除外した数字やAの選択した数字は変えたいです
このような場合自分でプログラミングしないといけないのでしょうか?
886:デフォルトの名無しさん
18/09/08 22:39:44.98 CrgXDO1K.net
百錬の覇王と召喚少女の奴隷魔術
887:デフォルトの名無しさん
18/09/08 22:41:19.06 CrgXDO1K.net
>>866
誤爆
888:デフォルトの名無しさん
18/09/08 22:56:28.52 DvgxKi+t.net
>>865 Squeak/Pharo Smalltalk
"@"
((1 to: 50) copyWithoutAll: #(2 16 22 23 42.50)) shuffle first: 10.
"A"
#(1 2 5 6 16 18 20 21 23 28 30 33 39 40 47 49 50) shuffle first: 10.
889:デフォルトの名無しさん
18/09/09 10:46:50.62 yaYW83OX.net
>>865 Ruby
([*1..50] - [2, 16, 22, 23, 42, 50]).sample(10)
[1, 2, 5, 6, 16, 18, 20, 21, 23, 28, 30, 33, 39, 40, 47, 49, 50].sample(10)
というか1~44までの数字の中で数字を10個ランダムで選ぶ乱数ツール使えばいいだけなのに質問者が謎
890:デフォルトの名無しさん
18/09/09 10:51:12.28 XJaXrhZ0.net
ロト6を当てたい一般人だろ
そんくらいは察してやれよ
891:デフォルトの名無しさん
18/09/09 11:22:22.79 VWkPHcyt.net
>>869>>870
自演
892:デフォルトの名無しさん
18/09/09 11:49:05.41 na1duSUN.net
>>869
アスペ
893:デフォルトの名無しさん
18/09/09 12:05:30.79 yaYW83OX.net
お、質問者様の登場か?w
894:デフォルトの名無しさん
18/09/09 13:55:51.77 na1duSUN.net
>>873
糖質かよ
895:デフォルトの名無しさん
18/09/09 14:04:26.80 iiqq7TK9.net
発達障害イライラでワロタ
896:デフォルトの名無しさん
18/09/09 14:05:05.91 juRJVYHI.net
くこけ?😗
897:デフォルトの名無しさん
18/09/09 14:06:54.57 MtkyzY0F.net
とうふさんはすこか??😍
898:デフォルトの名無しさん
18/09/09 14:08:03.90 uzOuEcd3.net
自演死ね
899:デフォルトの名無しさん
18/09/09 14:08:44.70 x2owZh/r.net
イ '、
/ ハ ',
i ハ ノ | i、 |
r‐-、 ,...,, | リ从-ノ ノリノノ-)リ、 l
:i! i! |: : i!| | リ ‐=・-; -・=‐ Y l イェ〜イ〜プログラミング好きなオタクみってるう?なんJ民デース!
! i!. | ;| . .i从 | ` ̄,:  ̄´ |从!
i! ヽ | | i リ,i ゚人,,__,,人:. | リ}
ゝ `-! :|! . ハ: i. , __ij..__ 、: 'iノ´
r'"~`ヾ、 i! 彡、 `Zエlフ'´ /ミ
,.ゝ、 r'""`ヽ、i! 彡イ\ ` ̄´ / ト ミ
!、 `ヽ、ー、 ヽ _/ ∧ > ―< ∧ \
| \ i:" ) ─ ' ¨: : : : | \ / |: : : \
900:デフォルトの名無しさん
18/09/09 14:09:07.67 0efZNutP.net
くこは罠🙅♀
901:ニャース
18/09/09 14:09:35.76 AYD3VQs9.net
ここでしたか
902:デフォルトの名無しさん
18/09/09 14:09:50.68 +yUoETM4.net
グレイシアちゃんのふたなりチンポ
903:デフォルトの名無しさん
18/09/09 14:10:48.73 m5NrVMRk.net
【怒報】ワイ 専門板にて1人からアスペやら糖質認定を受ける【援護求む】
スレリンク(livejupiter板)
904:デフォルトの名無しさん
18/09/09 14:11:31.78 lnlyvEPx.net
なんJから来たンゴwwwwwwww
905:デフォルトの名無しさん
18/09/09 14:12:42.07 V2BhMRg2.net
なんjの絆舐めるな!
906:デフォルトの名無しさん
18/09/09 14:14:26.66 JLLEIooV.net
試合中やぞ
907:デフォルトの名無しさん
18/09/09 14:15:18.48 KoiRlOSP.net
なんだこのスレ😨
908:デフォルトの名無しさん
18/09/09 14:15:42.19 1Rk7pi2L.net
アスペの>>869が居ると聞いて
909:デフォルトの名無しさん
18/09/09 14:16:23.81 7fkrmWDW.net
なんj書き込んだキッズ
今度から一人で解決しようね🤗
910:デフォルトの名無しさん
18/09/09 14:16:27.10 KW6FAnPg.net
>>872
>>874
実はこいつがなんJでスレ建てたんやで
>>869
は被害者や
911:デフォルトの名無しさん
18/09/09 14:17:33.96 xWgdA58m.net
はい
912:デフォルトの名無しさん
18/09/09 14:18:16.63 UPePJlkV.net
ここになんjに助けを求めたガイジはいませんかー?🙋
負け犬は何処かな🤔
913:デフォルトの名無しさん
18/09/09 14:18:35.22 mhobrALw.net
くこけ?
914:デフォルトの名無しさん
18/09/09 14:19:05.04 SFaJ2QTJ.net
なんJにスレ立ててまでするチンパンジーが見れると聞いて来ました
915:デフォルトの名無しさん
18/09/09 14:20:44.64 UPePJlkV.net
恥ずかしがらずに出てこいよ😘
ガイジくん😁
それとも顔真っ赤で出てこれないかな?🤔
916:デフォルトの名無しさん
18/09/09 14:24:20.57 iiqq7TK9.net
>>895
負け犬はお前定期
917:デフォルトの名無しさん
18/09/09 14:26:08.47 UPePJlkV.net
>>896
キターーー😁
本物ですわ😏
918:デフォルトの名無しさん
18/09/09 14:26:42.15 7fkrmWDW.net
>>896
スレ立てガイジ本人いて草
919:デフォルトの名無しさん
18/09/09 15:05:27.62 iMK3cxKN.net
図星か
920:デフォルトの名無しさん
18/09/09 15:07:21.91 xWgdA58m.net
>>896
大丈夫か?
921:デフォルトの名無しさん
18/09/09 15:57:06.11 yaYW83OX.net
意味わからないんだがw
ハンJでしょうもないプログラミングの質問した人がいたってことか?
922:デフォルトの名無しさん
18/09/09 15:58:03.09 yaYW83OX.net
ハンJじゃないなんJ
923:デフォルトの名無しさん
18/09/09 16:03:08.91 SFaJ2QTJ.net
また日本語怪しいじゃん君なんJでもまともに喋れなかったよね?
924:デフォルトの名無しさん
18/09/09 16:07:58.48 yaYW83OX.net
>>872が建てたのはこれかw
URLリンク(tomcat.2ch.s) c/test/read.cgi/livejupiter/1536469396/
925:デフォルトの名無しさん
18/09/09 16:20:59.20 yaYW83OX.net
で元のレスがこれか
スレリンク(tech板)
926:893
927:デフォルトの名無しさん
18/09/09 17:03:05.57 na1duSUN.net
>>904
立ててないぞ
人になすりつけるな
928:デフォルトの名無しさん
18/09/09 17:12:29.21 3HCWUffr.net
>>901でなんjをハンjと打ち間違える時点で通報騒動知ってるやつやん
>>873で自分に都合の悪いレスつくと本人認定するような奴だしなんでもかんでも人のせいにしてきたんだろうな
929:デフォルトの名無しさん
18/09/09 17:20:33.91 yaYW83OX.net
あ、これ俺に成りすまして他板でクソスレ立てて人をこっちに呼び込んでんのね
今理解したわ
このスレの住人なら>>871-872程度のことで他の板にスレ立てるわけないってわかってもらえると思うけど
荒れると嫌なんでしばらくROMりますわ
930:デフォルトの名無しさん
18/09/09 17:27:07.85 3HCWUffr.net
>>908
今理解したわとか嘘だろ
>>904で>>872が建てたと認定してる時点でお前はとっくにわかってただろ
931:デフォルトの名無しさん
18/09/09 17:44:29.85 C8FWMbW9.net
単発ばっかだし質問を小馬鹿にされた質問者が自演で荒らしてんだろ
いちいち反応すんなkz
932:デフォルトの名無しさん
18/09/10 21:43:55.78 YbX1NAV1.net
>>910
kzとかいつの時代やねん
お前はミスターアンモナイトかwwwww
933:デフォルトの名無しさん
18/09/11 11:59:19.26 bqaIVrpu.net
a-zからなる単語のペアが与えられるのでそれぞれの元を辞書順にソートした上で同値類を求めなさい
なお同一のペアが2度以上入力されることはなく、また出力時の各行は順不同とする
例
-*- input -*-
goose pigeon
cat dog
eel goldfish
goose duck
horse dog
cod eel
dove pigeon
dog rhino
goldfish squid
goose lark
-*- output -*-
dove duck goose lark pigeon
cat dog horse rhino
cod eel goldfish squid
934:デフォルトの名無しさん
18/09/11 15:17:49.53 RXZvWAlK.net
>>912
同値類とは?
935:デフォルトの名無しさん
18/09/11 17:41:21.76 bqaIVrpu.net
>>913
入力のペア"A B"は A = B を表しているものとして等しいもの同士をグループにまとめて出力してねという問題
正確には「同値類に分割せよ」か「商集合を出力せよ」と言うべきだったか
例えば S = {A, B, C, D, E, F, G} に対して
A = B, C = A, D = F, E = G ……(☆) が成り立っているとすると
S の全ての要素は A = B = C と D = F と E = G っていう同じもの同士に分類できるよね
で (☆) の下で A の S における同値類とは {A, B, C} のことであり、
(☆) の下での S の商集合とは {{A, B, C}, {D, F}, {E, G}} のことを言うよ
問題を解く上で数学的な要素は無いから数学の言葉を使わないで出題すべきだった
936:デフォルトの名無しさん
18/09/11 18:43:20.13 UwY6cfla.net
>>912 Squeak Smalltalk
| input groups |
input := 'goose pigeon
cat dog
eel goldfish
goose duck
horse dog
cod eel
dove pigeon
dog rhino
goldfish squid
goose lark'.
groups := OrderedCollection new.
input linesDo: [:line |
| pair |
pair := line subStrings.
(groups detect: [:group | group includesAnyOf: pair] ifNone: [groups add: Set new])
addAll: pair
].
(groups collect: [:each | each asSortedCollection joinSeparatedBy: ' ']) asStringWithCr
"=> 'dove duck goose lark pigeon
cat dog horse rhino
cod eel goldfish squid' "
937:デフォルトの名無しさん
18/09/11 18:58:42.97 RXZvWAlK.net
>>914
それは良いとしても>>912の問題における同値類とはなんなのか?
例として出されているのは入力が動物の名前のようで、出力は重複をなくした上で大まかな種類ごとに分類されているようではある。
しかしこのそれぞれの分類は一体いかなる基準によって同じと判別したのか?
もしこれが単語の意味、およびそれの分類(動物なら四つ足だとか哺乳類だとか)によって分けなければならないとすると、単語の意味やその分類がプログラムの側でわかっていなければならない。
しかも入力にはどんな単語が来るかわからないというのであれば辞書並みの単語数に関してそれを保持していなければまともに分類できない。
938:デフォルトの名無しさん
18/09/11 19:06:31.95 RXZvWAlK.net
>>915
え?それでいいの?ペアになってるなつが同じ種類ってこと?
939:デフォルトの名無しさん
18/09/11 19:55:35.45 zuM/oofP.net
>>916-917
>入力のペア"A B"は A = B を表している
940:デフォルトの名無しさん
18/09/11 21:04:39.05 RXZvWAlK.net
なるほど。また最初の問題が不備で無限の回答が出るか一つも回答が出ないパターンだったと。
941:デフォルトの名無しさん
18/09/11 21:40:27.09 zuM/oofP.net
見た感じ問題に不備はない
まだ何か勘違いしてるのでは
942:デフォルトの名無しさん
18/09/11 22:23:42.34 O7hfz4dz.net
>>912 Squeak Smalltalk (>>915 は入力順等によっては機能しないので差し替え)
| fn input |
fn := [:str |
| groups |
groups := OrderedCollection new.
str linesDo: [:line |
| pair found |
pair := line subStrings asSet.
found := (groups select: [:group | group includesAnyOf: pair])
ifEmpty: [{groups add: Set new}].
groups removeAll: found; add: (found inject: pair into: #,)
].
(groups collect: [:group | group asSortedCollection joinSeparatedBy: ' ']) asStringWithCr
].
input := 'goose pigeon
以下略'.
fn value: input.
"=> 'cat dog horse rhino
cod eel goldfish squid
dove duck goose lark pigeon' "
fn value: input, String cr, 'squid lark'.
"=> 'cat dog horse rhino
cod dove duck eel goldfish goose lark pigeon squid' "
943:デフォルトの名無しさん
18/09/11 22:32:02.08 srQbLx59.net
>>918
「それぞれの元を辞書順にソートした上で」
これは間違いってことね。
944:デフォルトの名無しさん
18/09/11 22:42:05.94 6IJHkLyh.net
cat dog horse rhinoとかってアルファベット順に出力するよう要請してるのだから少なくともそのフレーズに間違いはないよ
945:デフォルトの名無しさん
18/09/12 08:18:25.07 FM7FP8m6.net
>>912 「cat cat」とか重複するペアとか任意のペアが来てもオッケーなバージョン
def qs(er)
h = Hash.new Float::INFINITY
erc = 0
er.each do |r|
min = r.map{|e| h[e]}.min
ern = min == Float::INFINITY ? erc += 1 : min
r.each{|e| h[e] = ern}
end
h.group_by(&:last).values.map{|s| s.map(&:first).sort}
end
er = $<.readlines.map &:split
puts qs(er).map{|a| a * ' '} * $/
#=>
dove duck goose lark pigeon
cat dog horse rhino
cod eel goldfish squid
946:デフォルトの名無しさん
18/09/12 10:35:33.91 0dikQX95.net
>>924
その実装だと仮に squid lark のペアが末尾に追加されたとき
すでにある goldfish squid がキャンセルされちゃうけど?
URLリンク(ideone.com)
947:デフォルトの名無しさん
18/09/12 11:17:32.60 FM7FP8m6.net
>>925
指摘ありがと 確かにまずかった
URLリンク(ideone.com)
948:デフォルトの名無しさん
18/09/13 02:06:53.72 Pm51LGwI.net
>>912
Kotlin
URLリンク(paiza.io)
949:デフォルトの名無しさん
18/09/13 08:17:03.84 EC7Fu/Zv.net
>>927
よーわからんがペアの両方が既知の場合のマージ処理が抜けてない?
A B
C D
A C
の場合とか
950:デフォルトの名無しさん
18/09/13 10:08:33.08 HHLUVU7a.net
>>912の例をマージが必要になる順とかにしといてくれてれば…
951:デフォルトの名無しさん
18/09/13 10:14:48.87 q0HzNtar.net
>>912 perl
%h;
while(<>){
chomp;
($f, $s) = split/
952: /;#first, second undef $keyf; undef $keys; for $k (keys %h){ $keyf = $k if grep /$f/, @{$h{$k}}; $keys = $k if grep /$s/, @{$h{$k}}; } if(!defined $keyf and !defined $keys){ push @{$h{$.}}, $f; push @{$h{$.}}, $s; }else{ push @{$h{$keys}}, $f unless defined $keyf; push @{$h{$keyf}}, $s unless defined $keys; } } map{print join " ", (sort{$a cmp $b}@{$h{$_}}), "\n"}keys %h;
953:デフォルトの名無しさん
18/09/13 11:37:05.45 HHLUVU7a.net
>>930
これもマージ処理>>928が抜けてない?
URLリンク(ideone.com)
954:デフォルトの名無しさん
18/09/13 12:31:55.31 cU5S5NHG.net
>>928
両方が既に入ってるなら何もする必要ないと思うのだが。
955:デフォルトの名無しさん
18/09/13 13:14:56.32 EC7Fu/Zv.net
>>932
URLリンク(paiza.io)
入力
A B
C D
A C
出力
A B C
C D
期待される出力
A B C D
じゃろ?
956:デフォルトの名無しさん
18/09/13 14:17:54.21 q0HzNtar.net
>>912 >>933
%h;
while(<>){
chomp;
($f, $s) = split / /;#first, second
undef $keyf;
undef $keys;
for $k (keys %h){
$keyf = $k if grep /$f/, @{$h{$k}};
$keys = $k if grep /$s/, @{$h{$k}};
}
if(!defined $keyf and !defined $keys){
push @{$h{$.}}, $f;
push @{$h{$.}}, $s;
}elsif( (defined $keyf and defined $keys) and !($f eq $s) ){#merge
push @{$h{$keys}}, @{$h{$keyf}};
delete $h{$keyf};
}else{
push @{$h{$keys}}, $f unless defined $keyf;
push @{$h{$keyf}}, $s unless defined $keys;
}
}
map{print join " ", (sort{$a cmp $b} @{$h{$_}}), "\n"} sort{$a <=> $b} keys %h;
957:デフォルトの名無しさん
18/09/13 20:39:52.56 0RheZyur.net
>>933
あー。なるほど。そういうことか。
また考えよう。
958:デフォルトの名無しさん
18/09/14 03:38:24.35 SYmkUqRw.net
>>928
>>927は修正した。(URL同じ)
959:デフォルトの名無しさん
18/09/14 04:53:58.08 Z6RVr7Qr.net
>>936
差し支えなければ修正前のコードも別URLで再掲載してもらえますか?
あるいは公開バージョンの履歴や差分を参照する機能がpaoza.ioにあったら教えてください
くしくもマージを考慮「しない版」と「する版」が出揃ったのでどういう修正で対処したか調べると
それぞれの言語の(あるいはアルゴリズムの)特徴が際立って面白いのではないかなぁとふと思ったので
960:デフォルトの名無しさん
18/09/14 08:32:54.25 SYmkUqRw.net
>>937
すまん。前の版はもうない。paiza.ioはそういう機能はない。
思い出して時間があったらなんとかする。
961:デフォルトの名無しさん
18/09/14 09:31:32.78 PJYnZf+K.net
>>938
あーいやそこまでしなくても結構です。ありがとうございます!
962:デフォルトの名無しさん
18/09/14 12:57:38.55 q6Zv3uN7.net
わざわざ書こうとしてくれるなんて良いやつだな
963:デフォルトの名無しさん
18/09/14 18:45:13.33 9KWktx64.net
>>937
>>933が>>927の古いコードのコピペ
964:デフォルトの名無しさん
18/09/14 20:03:21.13 Z6RVr7Qr.net
>>941
おおありがとう!
965:デフォルトの名無しさん
18/09/14 20:39:39.94 cNoNQyuv.net
>>941
おお。ナイス。
966:デフォルトの名無しさん
18/09/14 20:50:46.38 SK0cQL9c.net
結構みんな人の書いたコード読んでるんだな
いい意味でびっくり
967:デフォルトの名無しさん
18/09/14 23:34:38.18 vS2kVSOd.net
逆になんで読まないの?
968:デフォルトの名無しさん
18/09/15 00:06:11.66 /ZWEPMk/.net
>>912
Rubyで。
URLリンク(ideone.com)
969:デフォルトの名無しさん
18/09/15 08:52:18.54 /ZWEPMk/.net
>>946
訂正。Rubyで。
URLリンク(ideone.com)
970:デフォルトの名無しさん
18/09/15 18:55:39.79 Q0ygbCVz.net
>>947 とは別の戦略。
Rubyで。
URLリンク(ideone.com)
971:デフォルトの名無しさん
18/09/15 19:09:51.94 1YQGrLsT.net
>>948
ソート忘れてんよ
972:デフォルトの名無しさん
18/09/16 00:15:22.99 +Pq0rgCm.net
>>949
付けといて。
973:デフォルトの名無しさん
18/09/16 08:13:10.07 qJ8HI8bW.net
>>912
Rubyで。ソート、コメント付き。
URLリンク(ideone.com)
974:デフォルトの名無しさん
18/09/18 20:26:30.74 iTEamDZZ.net
URLリンク(www.rco.recruit.co.jp)
↑
この問題どうですか?
自分でも書いてみたのですが合ってるかちょっと分かりません
C# URLリンク(ideone.com)
975:デフォルトの名無しさん
18/09/18 20:38:45.88 qJ7HW+J2.net
こういうのって答え公開してもいいんか?
976:デフォルトの名無しさん
18/09/18 20:48:39.65 sp2kbyYS.net
企業がやってるのって大体駄目だったと思うで
977:デフォルトの名無しさん
18/09/18 20:49:39.59 Iw2LHuqq.net
>>953
あくまでも過去の出題例、だからいいんじゃないですか?
978:デフォルトの名無しさん
18/09/19 00:29:21.73 gYIP5Vsu.net
アウトかセーフか分からないときは答え公開しないほうが無難
979:デフォルトの名無しさん
18/09/19 01:18:48.14 pHq1DkBS.net
>>956
アウトになる条件は、「エントリー後メールにて送付されるコーディング試験問題は、当社への応募以外の目的で無断使用しない」…@
だが、>>952 のリンクの問題は「エントリー後メールにて送付されるコーディング試験問題」ではないから@に反しない…A
さらに、無条件に誰でも見ることのできる問題であること…B
Aよりアウトではないと断定できるし、BがAの結論を補強する
結論として、>>952 のリンクの問題を公開しても問題ない
>>956 「アウトかセーフかわからない」という結論にどういう道筋で到達したの?
980:デフォルトの名無しさん
18/09/19 19:43:34.67 KaiQ4rsk.net
お題:コンプリートパネル(出展:高校生クイズ2018)
5×5のパネルが与えられる。各パネルは赤色か白色である。
各パネルに侵入すると、そのパネルの色が赤なら白、白なら赤に変化する。
最初のステップは、場外(左下のパネルの左隣)から左下のパネルへ侵入することである。
以降のステップでは、上下左右に移動することができる。
ただし、ひとつ前のパネルや場外に移動することはできない。
すべてのパネルを白色にするための移動経路を構成せよ。
WWWRR
WWWWR
WWWWR
WWWRR
RRRRW
=> 10 RRRRURUUUL (→→→→↑→↑↑↑←)
WWWWW
WWWWW
WWWWW
WWWWW
WWWWW
=> 0 (移動の必要なし)
WWWWW
WWWWW
WWWWW
WRWWW
WWWWW
=> 21 RRRRULULLDDRULURRDRDL (必ずしも最短経路である必要はない)
981:デフォルトの名無しさん
18/09/19 19:51:24.03 WMjcSrAA.net
>ひとつ前のパネルや場外に移動することはできない
全部踏めばいいんだからライツアウトの解法の亜種で解けるんじゃねえの
982:デフォルトの名無しさん
18/09/19 19:59:02.78 ZUIw2oHI.net
状態を変えずに任意の場所まで移動できるなら
6箇所だけそれぞれ1つだけRだった場合を計算してあとは回転なりなんなりして重ね合わせればいけるな
983:デフォルトの名無しさん
18/09/19 20:34:03.00 WMjcSrAA.net
↑
□□□
□□□→
2*3の全パターンで、この二つの方向のどちらかに抜ける経路が存在すればいい
あとは合成で何とかなる
984:デフォルトの名無しさん
18/09/19 21:11:11.50 zcXFtBV7.net
うーん。これはブルートフォースでやろうとするとかなり無駄が多くなって時間とメモリを山盛りに食いそうな予感。
985:デフォルトの名無しさん
18/09/19 23:00:29.71 gYIP5Vsu.net
5x5=25マスの赤or白の2値だから25bit、現在位置25通り(5bit)に前回位置相対で4通り(2bit)、あわせて32bitパターン?
986:デフォルトの名無しさん
18/09/19 23:25:52.07 WMjcSrAA.net
5x5は序の口で、100x100くらいが本命でしょう
ついでに最短の最適解も
問題も作るだけならラクだから1000x1000だって0.1秒程度で作れる
もちろん解くのは面倒
987:デフォルトの名無しさん
18/09/20 01:27:25.92 B4lxWLis.net
>>958
手でしか試してないけど
解けないパターンとかありそうな予感
URLリンク(i.imgur.com)
988:デフォルトの名無しさん
18/09/20 09:43:56.68 cMPVhU9i.net
プログラム考える以前に解くためのいいアルゴリズムが思い浮かばん
989:デフォルトの名無しさん
18/09/20 12:37:05.73 B1/3j8uv.net
辺の長さが3以上の時は戻るの禁止ってルールは実質的に無視できそうだな
というのも閉路を2周すれば元通りに戻るわけだから
xxx
x↓x
x↑x
上に行ってまた下に戻るって進みたいときは
→↓x
↑←x // 中央「←」を3回目に踏むときは下に進む
x↑x
ってすればいいわけで
2*2 かどちらかの辺が 1 の場合以外は任意のパターンで解があることになる
990:デフォルトの名無しさん
18/09/20 23:43:04.82 uzQ90Fqy.net
RWWWR
WRWWW
RWRWW
RWWRW
WRRWR
全てのパターンが解けて最長がこの形で44手かかる
となったけどできたばかりだからまだまだバグがありそう
991:デフォルトの名無しさん
18/09/21 23:11:26.91 1M+bqJR8.net
URLリンク(ideone.com)
表示までできるようになったので
ここでは5秒超えるので結果表示されないみたい
10年前のノートで2分半かかる
結果はこんな感じ
- - - - -
- - - - -
- - - - -
- x - - -
- - - - -
RRRRULDRULLDL 13
x - - - x
- x - - -
x - x - -
x - - x -
- x x - x
RRRRRUUUULLLLDDDDRRRURUULDLDDLUURDLURRUULLDL 44
992:957
18/09/22 13:39:38.33 EQZKU8B1.net
最適解ではないが、人間にも実行可能なアルゴリズムを考えた
上のラインから順番に確定させていく感じ
URLリンク(ideone.com)
993:デフォルトの名無しさん
18/09/23 05:22:08.89 QL0eQEru.net
解法全然分からないけど
枝狩りもメモ化もせず愚直に全探索すると44手目で10760814742109228通りになるのか…ヤバイな
URLリンク(codepad.org)
994:デフォルトの名無しさん
18/09/23 06:45:48.27 QL0eQEru.net
>>971
メモ化のみの全探索でも厳しいね
URLリンク(ideone.com)
995:デフォルトの名無しさん
18/09/23 07:02:07.82 QL0eQEru.net
>>963の理屈上なら>>972のstepの累積和が3,355,443,200(=25<<27)になった時点で全通り出たことになって最短の上限になるのかな?
996:デフォルトの名無しさん
18/09/23 10:53:27.77 daMeAE67.net
URLリンク(cdn-ak.f.st-hatena.com)
連続殺人犯が全ての目撃者を消して完全犯罪を目論む
997:デフォルトの名無しさん
18/09/23 12:36:34.31 FE85zabB.net
文字列のペアがn対与えられる。
s(1),t(1)
...
s(n),t(n)
この時、ペアを適切な数選び適切な順番で並べる事で
s(a1)s(a2)...s(ak) = t(a1)t(a2)...t(ak)
とできるかどうか判定せよ
(ペアを重複して選ぶのもOK)
998:デフォルトの名無しさん
18/09/23 12:41:57.26 A0stA7Ax.net
>>975
それって「s(i)=t(i)となるiが1つ以上存在するか」というだけのように思えるけど、違うかな?
999:デフォルトの名無しさん
18/09/23 12:42:44.79 A0stA7Ax.net
>>976は勘違いでした。取り消します
1000:デフォルトの名無しさん
18/09/23 13:27:09.60 yBlaBAG2.net
>>976
最初全く同じこと思ったわw
でもこれって十分条件に過ぎないんだな
a ab
bc c
s(1)s(2) = t(1)t(2) = 'abc'
1001:デフォルトの名無しさん
18/09/23 17:12:26.93 daMeAE67.net
応用だけは思い付いた
ATCGTTGTAC, AAATTTCTCTCTTTCT
GTGATGCGTTGCAGGT, ATGCCATGTGAC
AAATTGCTGAC, ATGTTGCGTC
ATGCGTACCCACG, AGTGCGTTCGTAC
...(以下、1万行続く)
1002:デフォルトの名無しさん
18/09/24 12:45:56.45 ZWCrk0/p.net
>>975
空文字列は含むの?
1003:デフォルトの名無しさん
18/09/24 14:31:45.91 twjLvrgB.net
重複しても良いってなっているのでどうやっていいか分からなくなった。
重複なしなら単に順列の問題で全パターン調べれば良いだけなんだけどな。
1004:デフォルトの名無しさん
18/09/24 14:56:44.30 hAv+WLv3.net
>>980
含むと何も並べなければOKって事になりそう
1005:デフォルトの名無しさん
18/09/24 15:56:26.13 IwP3sRIS.net
>>982
結果じゃなくて入力に
一つも選ばないのがOKならそもそも問題として成立しないだろ
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
2052日前に更新/313 KB
担当:undef