1 名前:デフォルトの名無しさん [2019/02/03(日) 11:21:53.20 ID:72eosYJ+.net] プログラミングのお題スレです。 【出題と回答例】 1 名前:デフォルトの名無しさん お題:お題本文 2 名前:デフォルトの名無しさん >>1 使用言語 回答本文 結果がある場合はそれも 【ソースコードが長くなったら】 (オンラインでコードを実行できる) https://ideone.com/ codepad.org/ compileonline.com/ rextester.com/runcode https://runnable.com/ https://code.hackerearth.com/ melpon.org/wandbox https://paiza.io/ 宿題は宿題スレがあるのでそちらへ。 ※前スレ https://mevius.2ch.net/test/read.cgi/tech/1538096947/
909 名前:デフォルトの名無しさん mailto:sage [2019/05/10(金) 12:53:54.51 ID:KAkBQh2y.net] 宿題誘導か 最近のアホは小賢しいな
910 名前:デフォルトの名無しさん mailto:sage [2019/05/10(金) 13:27:19.10 ID:k7gY5pMP.net] >>882 python st = '''a b c d ''' line = 0 ; col = 0 for c in st : __if c == '\n' : ____line += 1 ____col = 0 ____continue __if c != ' ' : ____print ('['+c, col,str(line)+']', sep=',') __col += 1
911 名前:デフォルトの名無しさん mailto:sage [2019/05/10(金) 13:40:11.78 ID:k7gY5pMP.net] >>891 出力フォーマットが ['a', 0, 0] ['b', 2, 0] ['c', 4, 0] ['d', 0, 2] でもよければ print文は簡単になる print ([c, col,line])
912 名前:さすらいの蟻人間 mailto:sage [2019/05/10(金) 14:51:58.21 ID:CF7UUf9v.net] お題: >>882 の入出力を逆転。
913 名前:デフォルトの名無しさん mailto:sage [2019/05/10(金) 15:12:02.76 ID:bODSyEKx.net] >>893 手抜きすんな面白くない
914 名前:デフォルトの名無しさん [2019/05/10(金) 15:43:29.85 ID:aTy0NCJ4.net] >>880 与えられた数の3倍以上の個数を持つ系列を を3個示せ。
915 名前:デフォルトの名無しさん mailto:sage [2019/05/10(金) 17:50:33.37 ID:58PV3kUA.net] >>880 ,889 Squeak Smalltalk | chain | chain := [:n | Array streamContents: [:ss | ss nextPut: n. [n > 1] whileTrue: [ss nextPut: (n := n even ifTrue: [n / 2] ifFalse: [n * 3 + 1])] ] ]. chain value: 10. "=> #(10 5 16 8 4 2 1) " (1 to: 100) count: [:n | (chain value: n) size >= 15] "=> 71 "
916 名前:デフォルトの名無しさん [2019/05/10(金) 20:05:13.80 ID:0Zlxa6bH.net] >>880 Perl のワンライナー。 perl -ne '$n=$_;chomp($n);@d=($n);while($n!=1){$n=$n&1?($n*3+1):($n/2);push(@d,$n)}print "[".join(", ", @d)."]\n"' 実行する場合はbash等のシェルから行う(シングルクォートの中がそのままperlに引き渡されさえすれば他のシェルでも良い)。 標準入力から1行1データで入力して結果を出力するようにした。
917 名前:デフォルトの名無しさん [2019/05/10(金) 20:29:31.76 ID:/+/am3CQ.net] >>895 27のとき112個 31のとき107個 10億くらいまで回したけど、これら以外なくね? 数列の初期値と長さは、初期値が小さいうちは同じくらいだが、初期値を大きくしても数列の長さはさほど伸びない。 ttps://imgur.com/wm0kCEQ グラフはxが大きくなるほど飛ばす間隔も大きくしてあるからあまり正確ではない。
918 名前:デフォルトの名無しさん mailto:sage [2019/05/10(金) 21:48:47.85 ID:LM2YqzO0.net] お題 https://www.youtube.com/watch?v=2JNgkMMaNlw このようなルートの数を数え上げるプログラムを作る N=5位まででよい
919 名前:デフォルトの名無しさん mailto:sage [2019/05/10(金) 22:09:58.71 ID:KAkBQh2y.net] ZDDやるなら出来合いのもの使って終わりじゃねえの? https://github.com/junkawahara/frontier-basic https://hs-nazuna.github.io/tdzdd-manual/intro.html
920 名前:デフォルトの名無しさん mailto:sage [2019/05/11(土) 11:54:01.37 ID:Ze1v8w/9.net] >>880 Perl5 sub chain { my $i = shift; $i == 1 ? $i : ($i, ($i & 1 ? chain(3*$i + 1) : chain($i / 2))) } for (qw{10 1 30}) { @a = chain $_; print "[@a]\n"; } 実行 ~ $ perl 13_875_collatz.pl [10 5 16 8 4 2 1] [1] [30 15 46 23 70 35 106 53 160 80 40 20 10 5 16 8 4 2 1]
921 名前:デフォルトの名無しさん mailto:sage [2019/05/11(土) 12:16:05.54 ID:Ze1v8w/9.net] >>882 Perl5 @in = map{[split'']} map{split '\n'} <<EOF; a b c d EOF for $j (0..$#in) { for $i (0..$#{$in[$j]}) { $c = $in[$j][$i]; print "[$c,$i,$j]\n" if $c =~ /\w/; } } 実行 ~ $ perl 13_877.pl [a,0,0] [b,2,0] [c,4,0] [d,0,2]
922 名前:デフォルトの名無しさん [2019/05/11(土) 13:06:48.39 ID:bKjSBhWB.net] >>880 Ruby で module Collatz def self.next_number( num ) if num.even? # 偶数 num / 2 else # 奇数 num * 3 + 1 end end def self.chain( num ) @@results = [ ] tmp = num while true @@results.push tmp break if tmp == 1 tmp = next_number( tmp ) end @@results end end [ 1, 27 ].each do | num | p Collatz.chain( num ) end
923 名前:デフォルトの名無しさん mailto:sage [2019/05/11(土) 18:55:11.91 ID:fAbbaveG.net] >>880 c https://ideone.com/jwtvbF >>880 ruby https://ideone.com/MIKeM7 >>880 ocaml https://ideone.com/CEassZ
924 名前:デフォルトの名無しさん mailto:sage [2019/05/11(土) 20:54:08.94 ID:wddfxsLz.net] ideone.comはMATLABに対応してないのね。 書いてみた後で気がついた。
925 名前:デフォルトの名無しさん mailto:sage [2019/05/11(土) 23:44:29.57 ID:fAbbaveG.net] >>880 octave https://ideone.com/eNqIim
926 名前:デフォルトの名無しさん [2019/05/12(日) 02:01:10.46 ID:FbICTnq7.net] >>880 Java https://paiza.io/projects/VSqA-UZgWeXB-YzVTnrQRg takeUntilが欲しいなー
927 名前:デフォルトの名無しさん [2019/05/12(日) 06:46:28.87 ID:R9TUiFuu.net] >>880 コラッツ樹で作れば出力を減らせる。
928 名前:デフォルトの名無しさん [2019/05/14(火) 02:59:08.35 ID:3xJ0OqNt.net] >>882 Kotlin https://paiza.io/projects/Aab0mA1WSwXHnHL2049hCA for や while ループ使わずに forEachIndexed で入れ子にしてみました。
929 名前:デフォルトの名無しさん mailto:sage [2019/05/14(火) 09:26:15.81 ID:zeev4Evh.net] >>882 Ruby で text = <<"EOT" a b c d EOT re = /[^ ]+/ # 空白以外 text.each_line.with_index do | line, idx | # 1行ずつ処理する line.strip! # trim # $~.begin は、マッチした先頭文字の位置 line.scan( re ) { puts "[" + [ $~.to_s, $~.begin(0), idx ].join( ", " ) + "]" } end
930 名前:デフォルトの名無しさん mailto:sage [2019/05/14(火) 10:07:03.30 ID:rKVVoOG1.net] >>891 をスッキリ修正してみた 改行コード指定をやめ、for loop のカウンタを利用 >>882 の解 st = '''a b c d ''' for line,l in enumerate(st.splitlines()) : for col,c in enumerate(l): if c != ' ' : print('['+c, col,str(line)+']',sep=',')
931 名前:デフォルトの名無しさん mailto:sage [2019/05/14(火) 14:12:15.49 ID:8QdSJZ63.net] >>910 空白以外は\Sでマッチするぞ
932 名前:デフォルトの名無しさん mailto:sage [2019/05/14(火) 23:52:44.04 ID:AtHJrRxM.net] >>882 Squeak Smalltalk | fn | fn := [:str | ((str lines collectWithIndex: [:line :lIdx | (line reject: #isSeparator) asArray collect: [:chr | {chr. (line indexOf: chr) - 1. lIdx - 1}]] ) concatenation select: #notEmpty) asStringWithCr ]. fn value: 'a b c d' "=> '#($a 0 0) #($b 2 0) #($c 4 0) #($d 0 2)' "
933 名前:デフォルトの名無しさん mailto:sage [2019/05/15(水) 01:06:44.65 ID:tCUIeJeC.net] >>913 smalltalk って全く知らないけど、最後が出力のつもり? だったらお題の出力フォーマットと似ても似つかないじゃん。
934 名前:デフォルトの名無しさん mailto:sage [2019/05/15(水) 03:57:52.07 ID:i8y0s24p.net] いや似てる
935 名前:デフォルトの名無しさん mailto:sage [2019/05/15(水) 04:50:48.17 ID:TsVBVaTo.net] >>882 Squeak/Pharo Smalltalk 出力はともかく同行に同文字があるとダメだった^^;ので>>913 差し替え | fn | fn := [:str | ((str lines collectWithIndex: [:line :lIdx | (line asArray collectWithIndex: [:chr :cIdx | {chr. cIdx - 1. lIdx - 1}] ) reject: [:each | each first isSeparator]] ) concatenation select: #notEmpty thenCollect: [:each | '[{1}, {2}, {3}]' format: each]) asStringWithCr ]. fn value: 'a b c d' "=> [a, 0, 0] [b, 2, 0] [c, 4, 0] [d, 0, 2] "
936 名前:905 [2019/05/15(水) 09:57:59.71 ID:AfKgri37.net] >>912 re = /[^ ]+/ 空白以外だから、上のようにしたけど、空白"類"以外なら、\S+ でよい 問題の意図がどちらなのか、よく分からない
937 名前:デフォルトの名無しさん mailto:sage [2019/05/15(水) 23:43:58.92 ID:jmndeABE.net] >>882 c https://ideone.com/tIcQPK >>882 ruby https://ideone.com/qMREyy >>882 ocaml https://ideone.com/uaNmRF >>882 octave https://ideone.com/psnXl5
938 名前:デフォルトの名無しさん mailto:sage [2019/05/16(木) 01:50:16.53 ID:4fy8zsNP.net] >>918 C以外は助長だな
939 名前:デフォルトの名無しさん mailto:sage [2019/05/16(木) 03:57:55.40 ID:6BLr95cC.net] >>919 具体的にはどの処理のどの部分を冗長に感じられたのでしょうか? たとえばRubyの回答がどう冗長か(あるいはどう書けば良いか)教えてください!
940 名前:デフォルトの名無しさん mailto:sage [2019/05/16(木) 08:25:20.49 ID:MujhV/Cm.net] >>918 故意にpython 外しはずるい。 >>882 python https://ideone.com/yvFuOl printフォーマットは、コメントにしたpython3.6のf文字列の方がシンプルだが、ideone は3.5しかないのでformat文にした。
941 名前:デフォルトの名無しさん [2019/05/16(木) 10:18:52.91 ID:YVMjr/q8.net] >>882 Go https://ideone.com/mJOisR コンパクトにならんね
942 名前:デフォルトの名無しさん [2019/05/16(木) 14:34:08.16 ID:YVMjr/q8.net] >>893 Go https://ideone.com/x2iyka
943 名前:デフォルトの名無しさん [2019/05/16(木) 19:26:40.27 ID:ktv4pd0R.net] >>882 C++ https://ideone.com/cbDkCt
944 名前:デフォルトの名無しさん mailto:sage [2019/05/16(木) 20:28:13.91 ID:3sIrlJF4.net] お題 整数の数列が与えられるので、各値の大小関係を変えないように値をなるべく小さくせよ ただし1番小さい要素は1にすること 入力 -6 3 9 5 3 -7 出力 2 3 5 4 3 1
945 名前:デフォルトの名無しさん [2019/05/16(木) 21:00:21.83 ID:/dAesd8e.net] >>925 c++ https://ideone.com/zEwKOk
946 名前: mailto:sage [2019/05/16(木) 21:47:12.78 ID:m1RdOLwU.net] >>925 >値をなるべく小さくせよ 絶対値を小さく、という意味ですか?
947 名前:デフォルトの名無しさん mailto:sage [2019/05/16(木) 22:59:47.34 ID:0eZXbfha.net] >>925 Pharo/Squeak Smalltalk | fn | fn := [:arr | | sorted | sorted := arr asSet sorted. arr collect: [:x | sorted indexOf: x] ]. fn value: #(-6 3 9 5 3 -7). "=> #(2 3 5 4 3 1) "
948 名前:913 mailto:sage [2019/05/16(木) 23:00:52.84 ID:02wuysYU.net] >>882 ocaml https://ideone.com/waZZh7 ・自分に正直になってrefとforループで書いた >>919 じょ、助長… >>921 外しと言うより、たんに不勉強 python書けないんよね(´・ω・`)
949 名前:デフォルトの名無しさん mailto:sage [2019/05/16(木) 23:34:17.56 ID:YXKZQo24.net] >>928 Perl5 @a = qw{-6 3 9 5 3 -7}; $h{$_}=1 for @a; %o = map{$_=>++$i} sort{$a<=>$b} keys %h; @b = map{$o{$_}} @a; print "@a => @b\n"; 実行 ~ $ perl 13_920.pl -6 3 9 5 3 -7 => 2 3 5 4 3 1
950 名前:デフォルトの名無しさん mailto:sage [2019/05/16(木) 23:42:11.94 ID:YXKZQo24.net] >>930 アンカーしくった、>>925 宛だった…orz
951 名前:デフォルトの名無しさん mailto:sage [2019/05/16(木) 23:44:54.09 ID:02wuysYU.net] >>925 octave https://ideone.com/f9S91N
952 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 00:26:31.35 ID:SI3/qEwo.net] >>893 Pharo/Squeak Smalltalk | fn | fn := [:arr | String streamContents: [:ss | | cIdx lIdx | cIdx := lIdx := 0. arr do: [:spec | spec third > lIdx ifTrue: [ ss nextPutAll: (String new: spec third - lIdx withAll: Character cr). lIdx := spec third. cIdx := 0 ]. ss nextPutAll: (String new: spec second - cIdx withAll: Character space). ss nextPutAll: spec first. cIdx := spec second + 1. ] ] ]. fn value: #( (a 0 0) (b 2 0) (c 4 0) (d 0 2)). "=> a b c d "
953 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 00:35:47.85 ID:HrEfbPs9.net] >>932 重複除去でソート後のインデックスを返す関数? チート過ぎてわろたw
954 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 00:55:59.72 ID:TuAgku6e.net] 最近jニキ来ないな
955 名前:デフォルトの名無しさん [2019/05/17(金) 01:23:24.98 ID:UHIjSpei.net] >>925 Kotlin https://paiza.io/projects/NMOKqrUnEfwIbLSRmrMMmQ
956 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 07:54:47.22 ID:9a+COZnd.net] >>893 s = '''\ [a, 0, 0] [b, 2, 0] [c, 4, 0] [d, 0, 2] ''' from parse import * #pip install col2 = 0 ; line2 = 0 for l in s.splitlines(): col = col2 ; line = line2 r=parse('[{},{},{}]',l) c= r[0] col2 = int(r[1]) ; line2 = int(r[2]) {print() for _ in range(line2-line) } {print(' ',end='') for _ in range(col2-col)} print(c, end='') col2 += 1 print() '''#出力 a b c d '''
957 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 08:32:11.25 ID:9a+COZnd.net] >>937 parse に型指定追加 >>893 Python s = '''\ [a, 0, 0] [b, 2, 0] [c, 4, 0] [d, 0, 2] ''' from parse import * #pip install col2 = 0 ; line2 = 0 for l in s.splitlines(): col = col2 ; line = line2 (c,col2,line2) = parse('[{},{:d},{:d}]',l) {print() for _ in range(line2-line) } {print(' ',end='') for _ in range(col2-col)} print(c, end='') col2 += 1 print() '''#出力 a b c d '''
958 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 12:14:50.20 ID:8VLhbVxR.net] >>925 は、ランク付けの問題だろ 入力データ -6 3 9 5 3 -7 出力・ランク 2 3 5 4 3 1 入力データの最も小さい数字を、ランク1 にして、 数字が大きくなるほど、ランクも大きくしていく 同値の場合は、同じランクにして、次のランクも間隔を空けない。 ランク3 が2つあっても、次は、ランク4 つまり、ランクが欠けることはない!
959 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 12:23:14.18 ID:99nnd/tf.net] >>939 うるせぇ死ね
960 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 12:39:09.53 ID:L8EHraRu.net] 難しく書いてたけど結局これだけなのか 問題文をわざと複雑に見せかける現代文読解と同じ仕組みじゃないか
961 名前:デフォルトの名無しさん [2019/05/17(金) 12:49:18.63 ID:ut9H1r3U.net] プログラム作る前に気づいたので>>936 のリンク先のブログラムのタイトルは密かに「順位」にしといたw
962 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 12:50:56.11 ID:l82uGMBO.net] >>941 わざと難しく見せかけているというよ
963 名前:閨Aたんに説明が下手なだけだと思う [] [ここ壊れてます]
964 名前:デフォルトの名無しさん mailto:age [2019/05/17(金) 13:23:46.56 ID:gFFtTihX.net] 別に難しくない件
965 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 13:29:01.98 ID:L8EHraRu.net] そうですね 難易度は主観ですね なら短さ長さを比べるとこうなります ・各値の大小関係を変えないように値をなるべく小さくせよ ・ランク付けせよ もしかしたらこれが要するにただのランク付けだと分かるまで何人が挑戦するかを試してみる社会調査だったのかもしれません
966 名前:デフォルトの名無しさん [2019/05/17(金) 13:36:08.80 ID:/5AjAxyT.net] >ランク付けだと分かるまで何人が挑戦するかを試してみる まさにそうじゃないの?
967 名前:デフォルトの名無しさん [2019/05/17(金) 13:44:50.72 ID:mxL0YWmq.net] >>925 J f =: >: @ (i.~ /:~ @ ~.) f _6 3 9 5 3 _7 2 3 5 4 3 1
968 名前:デフォルトの名無しさん mailto:age [2019/05/17(金) 14:08:19.69 ID:gFFtTihX.net] >>945 アスペ
969 名前:デフォルトの名無しさん mailto:age [2019/05/17(金) 14:08:53.72 ID:gFFtTihX.net] 問題文を添削しちゃう皆さん
970 名前:デフォルトの名無しさん mailto:age [2019/05/17(金) 14:20:43.10 ID:gFFtTihX.net] >>927
971 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 15:06:17.59 ID:Jb6joIEA.net] さすがにいちゃもん付け過ぎだろ 元の問題文読めば普通はわかるだろ
972 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 15:51:11.97 ID:99nnd/tf.net] 問題: おっぱいをなるべく小さくせよ。
973 名前:デフォルトの名無しさん [2019/05/17(金) 16:00:34.70 ID:ut9H1r3U.net] >>952 (・)(・) ↓ (・)(・)
974 名前:デフォルトの名無しさん [2019/05/17(金) 16:18:22.99 ID:X2USxdO3.net] お題:自然数を隙間なく自分自身以外の数に対応させよ。
975 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 16:46:21.83 ID:9GdSR9hc.net] >>954 先生、対応させると言う日本語がわかりません。 日本人には難しいです。
976 名前:デフォルトの名無しさん [2019/05/17(金) 17:04:52.99 ID:ut9H1r3U.net] >>954 君が何を言っているのかわからない。
977 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 17:24:51.97 ID:L8EHraRu.net] >>954 パッ見で分からん
978 名前:デフォルトの名無しさん [2019/05/17(金) 18:07:07.73 ID:nEasvejW.net] 偶数なら1引く 奇数なら1足すとかでいいんじゃないの
979 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 18:39:31.46 ID:9GdSR9hc.net] >>958 良いんじゃないのじゃなくて、他の人が理解できる言葉に翻訳してよ。 これじゃ小学校の国語で平均点以下だろ。 日本語が不自由ならプログラム例を示せば良い。変な言語はダメだけど、C系の素直な言語なら万国共通
980 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 19:30:38.86 ID:Jb6joIEA.net] 要はf: N -> N の∀n∈N f(n) ≠ n かつ全単射な写像を求めろってことでしょ
981 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 19:35:23.29 ID:Jb6joIEA.net] あ、単射じゃなくてもいいか
982 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 19:40:06.71 ID:9GdSR9hc.net] >>960 あのさ、それで人に通じると思ってるの? そんな仕様書を書いて誰がコーディングするんだよ。 日本語に翻訳して明後日出直してこい。 言語能力にかけてるやつは、自分の頭の中が周りの人からスケスケに見えてると言う妄想を持ってる。 狭い世界で通用しても社会では通用しない。
983 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 19:47:34.60 ID:9GdSR9hc.net] ここまで何人もの人がわからんと言ってるのは、その仕様を出した人間の素質が失格という事だろ。 それを何で庇うんだ? 庇う理由を説明してみろよ。 ここがバカばかりと思うならバカに解るように説明しろよな。 バカにわからせなければ、PLは務まらないよ。 と言うか、仕事は一般人としてるのに何をトチ狂ってるんだ? かなり精神を疑うな。
984 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 19:50:16.70 ID:Jb6joIEA.net] 教養のないやつに限ってブチ切れる
985 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 20:11:05.80 ID:KIX3RA0i.net] >>952 桃白白改めミスターポポ改めピラフ改めピッコロさん、くだらない出題はやめてください
986 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 20:11:56.63 ID:9a+COZnd.net] >>964 で、どんな問題なんだ? プログラミングできる仕様として出してくれよ。
987 名前: mailto:sage [2019/05/17(金) 20:21:17.94 ID:e+Q6zZPk.net] >>961 単射でないとなると、n に対して n % 10 を対応付けるとかもありになりますね… >>962 全射、単射、全単射とかは普通に使う単語ですよ、知らないのなら、これらの術語を含む数学の本…代数ですかね?解析ですかね?よくわからないや、を一冊読んでみるのがいいですね
988 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 20:46:06.10 ID:Jb6joIEA.net] >>966 出題者に言えよ >>967 %じゃ全射にも単射にもならんぞ 上で誰かが言ってた遇奇を入れ替えたりだとか f(n) = n - 1, f(0) = 0以外の任意の値 とかなんでもありだね。つまらんけど
989 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 20:48:13.95 ID:99nnd/tf.net] 顔射は普通に使う単語ですか?
990 名前: mailto:sage [2019/05/17(金) 20:51:49.11 ID:e+Q6zZPk.net] >>968 >%じゃ全射にも単射にもならんぞ そうですね、じゃ、割り算の商の整数部分「/」とかはどうでしょう
991 名前:デフォルトの名無しさん [2019/05/17(金) 21:06:32.38 ID:ut9H1r3U.net] >>969 はい。
992 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 21:09:38.99 ID:Jb6joIEA.net] >>970 そりゃなんでもありよ その場合は0の時だけ別の値を定義すれば良し
993 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 21:30:53.57 ID:0M7uQZeH.net] 920だが、ランク付けだと解が236531と解釈される可能性が有ったので避けた もっと簡単な書き方があるはそう思う、座圧+1とかでも伝わるだろうし……
994 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 22:36:31.21 ID:gcMK/Ofn.net] 数値のリストを入力し、値の小さい順に1から順位を付けて、 順位のリストを出力する。同じ値は同じ順位とする
995 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 22:47:54.41 ID:TGYryIO4.net] ほんとそれ ピラフ改めピッコロはさっさと自害しろ
996 名前:デフォルトの名無しさん mailto:sage [2019/05/17(金) 23:20:58.53 ID:L8EHraRu.net] >>954 やっぱりどういう入出力の具体例になるのか分からない どういうことなんだよ
997 名前:デフォルトの名無しさん [2019/05/17(金) 23:47:24.37 ID:xYITnAAv.net] >>976 あくまで俺の推測だが 一例として、自分自身の数が3のとき自然数から3を除去して (1) 1, 2, 3, 4, 5, 6, ... ↓ (2) 1, 2, NULL, 4, 5, 6, ... NULLになった部分をなくすために4以降を左へシフトする (3) 1, 2, 4, 5, 6, 7, ... こんな感じで(1)の入力を(3)のような出力にする関数じゃないか? ただお題の条件としてはもっとゆるくて、入力はオーバーフローしない範囲の自然数、出力は「自分自身の数」を含まない自然数になれば何でもよくて、 定数関数でもハッシュ関数でもいいはず。 ただし、ある入力に対して必ず決まった値にならなければならず、同じ入力で呼び出すたびに出力が違うのはダメ。
998 名前:デフォルトの名無しさん mailto:sage [2019/05/18(土) 00:15:42.42 ID:w6U4ewGf.net] >>977 何をアホな事を言ってるんだ? そんなの小学生に数を数えなさいと言ってるのと等しいぞ。 それのどこがプログラミングのお題なんだ? バカじゃないのか?
999 名前:デフォルトの名無しさん mailto:sage [2019/05/18(土) 01:03:14.81 ID:bbC9YGRR.net] >>947 乙、見事。
1000 名前:デフォルトの名無しさん [2019/05/18(土) 01:57:48.06 ID:jjK+y75q.net] >>925 C# https://paiza.io/projects/OXVNCyMqgCySX7dUhwYh5Q
1001 名前:デフォルトの名無しさん [2019/05/18(土) 02:15:29.87 ID:jjK+y75q.net] >>925 Java https://paiza.io/projects/VRVZT8GnP7oLaOjx4B8LtQ?language=java
1002 名前:デフォルトの名無しさん mailto:sage [2019/05/18(土) 07:46:37.95 ID:w6U4ewGf.net] >>925 Python ol = [-6, 3, 9, 5, 3, -7] print([ sorted(set(ol)).index(x)+1 for x in ol ] ) # [2, 3, 5, 4, 3, 1]
1003 名前:デフォルトの名無しさん mailto:sage [2019/05/18(土) 10:52:55.70 ID:0WkfcTHM.net] >>976 1. すべての自然数nに対してf(n)≠n 2. 自然数m,nがm≠nを満たすときf(m)≠f(n) を満たすような関数f(n)を作れってこと 例えば 1. 入力が1のとき出力は1以外 2. 入力が1のときと2のときで出力が同じになってはダメ
1004 名前:デフォルトの名無しさん mailto:sage [2019/05/18(土) 11:06:29.35 ID:spo9+l+a.net] >>983 2はいらんやろ 適当なコト抜かすなごかすぞぼけ
1005 名前:デフォルトの名無しさん mailto:sage [2019/05/18(土) 11:10:21.66 ID:vBrA8iCH.net] 単射である必要はない。全射でさえあればよい
1006 名前:デフォルトの名無しさん mailto:sage [2019/05/18(土) 12:08:52.78 ID:R97vL30T.net] 難しすぎて全くわからん… ハローワールド始めて間もない男にも分かる問題を出してくれぬか 優しく教えて欲しい
1007 名前:デフォルトの名無しさん [2019/05/18(土) 12:10:33.89 ID:HBaY+7WM.net] >>954 これがあれば1Mbyteのファイルが2byteになっちゃうのか?
1008 名前:デフォルトの名無しさん mailto:sage [2019/05/18(土) 12:48:31.15 ID:PrlqGkYa.net] >>983 これのどこがプログラムの問題なのかさっぱりわからん。 小学生の練習問題か? 例えば自然数が 1から4までとした場合、f(n) の出力配列は f(1) 2,3,4 f(2) 1,3,4 f(3) 1,2,4 f(4) 1,2,3 と言う事だろ? どうしてこんな問題を出したかさっぱり分からん、何か勘違いしてる?
1009 名前:デフォルトの名無しさん mailto:sage [2019/05/18(土) 14:29:45.05 ID:5ij/PJHb.net] >>925 c https://ideone.com/JBbm04