プログラミングのお題スレ Part11at TECH
プログラミングのお題スレ Part11 - 暇つぶし2ch713:デフォルトの名無しさん
18/08/02 02:37:36.98 aTwsiZBG.net
>>680 C
URLリンク(ideone.com)

714:デフォルトの名無しさん
18/08/02 19:31:00.50 zwgkA1lD.net
8888

715:デフォルトの名無しさん
18/08/10 02:32:41.77 3Gbr2Rmh.net
鈴木貫太郎
灘中 中学入試問題シリーズ 整数問題
URLリンク(youtu.be)
6桁の整数、5AB,C15 が999 の倍数である時、ABC を求めよ
答え
A=8, B=4, C=4

716:デフォルトの名無しさん
18/08/10 02:38:30.89 4W08/YUW.net
数学板でやれ

717:デフォルトの名無しさん
18/08/10 04:25:49.65 MBG3l1c9.net
>>697 C
URLリンク(ideone.com)

718:デフォルトの名無しさん
18/08/10 04:27:27.01 MBG3l1c9.net
お題:与えられた正の整数nを2進数~16進数に変換して表示する。
11進数以降の10以上を表す文字はABCDEFを使用。
(10=A, 11=B, 12=C, 13=D, 14=E, 15=F)
例:12進数の11 ---> B
出力例:
n=123456
base(2) ---> 11110001001000000
base(3) ---> 20021100110
base(4) ---> 132021000
base(5) ---> 12422311
base(6) ---> 2351320
base(7) ---> 1022634
base(8) ---> 361100
base(9) ---> 207313
base(10) ---> 123456
base(11) ---> 84833
base(12) ---> 5B540
base(13) ---> 44268
base(14) ---> 32DC4
base(15) ---> 268A6
base(16) ---> 1E240

719:
18/08/10 07:06:46.57 H9lF8aPc.net
>>700
スレリンク(tech板:909番)
スレリンク(tech板:29番)

720:デフォルトの名無しさん
18/08/10 10:02:14.32 GIxLf6/p.net
>>697
500015 + <ABC00> = 0 mod 999
<=> 4151 + <ABC> = 0 mod 999
<=> 4151 + <ABC> = 999*5
<=> <ABC> = 844
>>700 Ruby
#!ruby -p
b, n = $_.scan(/\d+/).map &:to_i
puts n.to_s(b).upcase
#=>
12進数の11
B
2進数の123456
11110001001000000
3進数の123456
20021100110
16進数の123456
1E240

721:デフォルトの名無しさん
18/08/10 10:56:59.12 EBuB6o8O.net
>>697
何も考えてないPerlのワンライナー
perl -e 'for(0..999){$n=sprintf"5%03d15",$_;if($n%999==0){print"$n\n"}}'
584415

722:デフォルトの名無しさん
18/08/10 11:16:24.27 EBuB6o8O.net
>>700
Linux等で動くGNUのbcコマンド
プログラムをファイルに入れておいてbcの引数で指定し、変換させたい数値は標準入力から読ませる。
ibase = 10
n = read()
for (i = 2; i <= 16; i++) {
obase = 10
print "base(", i, ") --> "
obase = i
print n, "\n"
}

723:デフォルトの名無しさん
18/08/10 11:38:51.00 EBuB6o8O.net
>>700
Kotlin
URLリンク(paiza.io)

724:デフォルトの名無しさん
18/08/10 14:15:41.82 xmypHVHY.net
>>700
C
URLリンク(ideone.com)

725:デフォルトの名無しさん
18/08/10 14:48:17.70 MBG3l1c9.net
>>701
既出でしたか 失礼しました
では追加でもう1つ
お題:
時間を表わす文字列(hh:mm:ss形式の8文字)の秒数を求める
最上位の時間だけは99時間を超えた場合拡張される
例:123時間45分6秒 ---> 123:45:06
出力例:
01:23:45 = 5025 sec
333:33:33 = 1200813 sec
出題者の回答例:C言語 URLリンク(ideone.com)

726:デフォルトの名無しさん
18/08/10 17:50:01.60 q2LOavXt.net
>>700
C言語 (再帰処理)
URLリンク(paiza.io)

727:デフォルトの名無しさん
18/08/10 17:57:07.00 q2LOavXt.net
>>707
Perl
URLリンク(paiza.io)
ワンライナーにもできるが、今回はこれで。

728:デフォルトの名無しさん
18/08/10 18:25:42.14 q2LOavXt.net
>>707
bash
URLリンク(paiza.io)

729:デフォルトの名無しさん
18/08/10 18:30:15.99 GIxLf6/p.net
>>707 Ruby ゴルフ気分で
#!ruby -palF:
$_='%d sec'%(0..2).map{|i|$F[~i].to_i*60**i}.sum
# input
01:23:45
333:33:33
# output
5025 sec
1200813 sec

730:デフォルトの名無しさん
18/08/10 18:40:53.56 splKqZqj.net
>>707
bash (かぶった)
URLリンク(paiza.io)

731:709
18/08/10 19:22:50.97 q2LOavXt.net
>>712
あ、そうか。その方が簡単だな。

732:
18/08/10 23:01:27.70 H9lF8aPc.net
お題:10兆までの素数のリストを作ってみませんか?
URLリンク(tech.nikkeibp.co.jp)
条件:既存のライブラリ、モジュール、外部コマンド等を利用するのは不可
すべて自分で記述すること
int64_t, uint64_t の使用は許可する

733:デフォルトの名無しさん
18/08/11 00:01:26.30 DgZEeL87.net
Ruby では百万までで、処理に数秒掛かって、78,498個の素数があった
class PrimeNumber # 素数
def initialize (to = 20)
@to = to
@prime_numbers = []
end
def add_table (n)
limit = Math.sqrt(n).ceil
@prime_numbers.each do |prime_num|
# 割り切れたら、素数ではない
return if n % prime_num == 0
# sqrt より大きいなら、確かめずとも素数である
break if limit < prime_num
end
@prime_numbers.push n # 割り切れない
end
def print
(2..@to).each do |n|
add_table n
end
puts @prime_numbers.length
end
end

734:デフォルトの名無しさん
18/08/11 02:38:16.74 7kLiHGgf.net
>>714
perl
一応これで理屈の上ではできるとは思うんだが、477577まで行ったところでアホらしくなって止めたw
#!/usr/bin/perl
use strict;
use warnings;
my @pn = (2);
my $n = 1;
print "$n: $pn[0]\n";
$n++;
LOOP:
for (my $i = 3; $i <= 10000000000000; $i += 2) {
 for (@pn) {
  next LOOP unless ($i % $_);
 }
 push(@pn, $i);
 print "$n: $i\n";
 $n++;
}

735:デフォルトの名無しさん
18/08/11 03:54:44.08 QfTJwHhj.net
>>714 Ruby
10兆なら改良されたAtkinの篩を使ってガシガシやるしかないだろう
URLリンク(citeseerx.ist.psu.edu)
sup = 10**7
primes = [2, 3]
5.step(sup, 6){|i|
2.times{
primes << i if primes.none?{|pr| break true if pr*pr > i; i % pr == 0}
i += 2
}
}
primes.pop if primes[-1] > sup
p primes.size #=> 664579

736:デフォルトの名無しさん
18/08/11 07:04:06.66 N9ICkOCi.net
>>714
昔やった
アセンブラ & AVX & マルチスレッド
探してみる

737:デフォルトの名無しさん
18/08/11 07:37:04.51 N9ICkOCi.net
みつかりました
そんなに昔じゃなかった
2年半前
41兆くらいまで求めてます
マルチスレッドではありませんでした
処理内容はよく覚えていません
素数表作成
ビットパターン作成
ふるい
のようなコメントがあります
105単位でなにかやってます

738:デフォルトの名無しさん
18/08/11 09:37:18.90 y6G1YdWM.net
だんだん思い出してきました
6n+1, 6n+5 に対応するビット列を保持
小さな素数の倍数はマスクを作ってAVX命令でANDしていって
大きな素数の倍数はp(210n+48個の値) にしぼって
ビット命令でひたすらふるう感じ
キャッシュサイズを考えて小さなバッファでやってます

739:デフォルトの名無しさん
18/08/11 16:27:34.72 VD7zYIqC.net
いいからコード貼れや

740:デフォルトの名無しさん
18/08/12 13:15:41.49 DNU8qmV7.net
お題:
ロト6で申込数字のいずれかが必ず5等以上に当選する
最小の申込数字の組み合わせを作ってください
ロト6は01~43の数字から異なる数字6個を順番不問で選び
申込数字6個のうち3個以上が本数字と一致すれば5等以上に当選となります

741:デフォルトの名無しさん
18/08/12 14:21:49.33 ZHEExUj+.net
>>722
・5等の当選条件を満たしている
・5等以上のいずれかの当選条件を満たしている
この2つは同値なの?

742:デフォルトの名無しさん
18/08/12 14:57:56.60 1gNSypiF.net
>>723
それを聞いてどうするの?

743:デフォルトの名無しさん
18/08/12 15:09:35.79 ZHEExUj+.net
>>724
1~5等に該当するならば必ず当選番号と同じ数字が少なくとも3つ入っているということがはっきりしない限り解けないでしょ

744:デフォルトの名無しさん
18/08/12 15:11:11.96 ZHEExUj+.net
ごめん
申込数字6個のうち3個以上が本数字と一致すれば5等以上に当選となります

申込数字6個のうち3個以上が本数字と一致すれば5等に当選となります
と読み間違えてたわ

745:デフォルトの名無しさん
18/08/12 15:14:32.85 1gNSypiF.net
>>723>>725の質問内容が違う件

746:デフォルトの名無しさん
18/08/12 15:17:25.19 ZHEExUj+.net
>>727
同値だよ

747:デフォルトの名無しさん
18/08/12 15:22:10.21 O4fOyJLk.net
15万個くらいの数字を吐き出して終わり?

748:デフォルトの名無しさん
18/08/12 15:26:16.88 1gNSypiF.net
>>728
>>723>>722とは無関係だが
>>725は(>>722の解釈次第では)無関係ではない

749:デフォルトの名無しさん
18/08/12 15:29:22.68 1gNSypiF.net
>>725
3個以上一致 <===> 5等以上に当選
3個以上一致 ====> 5等以上に当選
のどちらかをたずねたのかと思った

750:デフォルトの名無しさん
18/08/12 15:39:13.61 ZHEExUj+.net
>>731
そもそもこっちが>>723>>725で「申込数字6個のうち3個ちょうど本数字と一致すれば5等に当選」って誤解してたのが始まりなんだ
わけわかんないこと言ってごめんね

751:デフォルトの名無しさん
18/08/12 17:47:14.42 9O3GHV+n.net
>>707 Squeak Smalltalk
('01:23:45' subStrings: ':') reversed polynomialEval: 60 "=> 5025 "
('333:33:33' subStrings: ':') reversed polynomialEval: 60 "=> 1200813 "

Pharo Smalltalk
(('01:23:45' substrings: ':') collect: #asInteger) reversed polynomialEval: 60 "=> 5025 "
(('333:33:33' substrings: ':') collect: #asInteger) reversed polynomialEval: 60 "=> 1200813 "

752:デフォルトの名無しさん
18/08/12 18:43:07.08 9O3GHV+n.net
>>714 Squeak/Pharo Smalltalk で 100億まで
| count |
count := 0.
Integer primesUpTo: 1e10 do: [:prime | count := count + 1].
count '=> 455052511 '
組み込みだけど、書くとしても同じアルゴリズムで書くと思うので…
URLリンク(ideone.com)

753:デフォルトの名無しさん
18/08/12 21:48:09.01 cX8lnXZC.net
>>722 C++
URLリンク(ideone.com)
コンビネーション使う方法と、確率DPの二通りでやってみた。
(ちなみに5個当り222本は 6本が2等で、216本が3等)
※確率、期待値系は苦手だ

754:デフォルトの名無しさん
18/08/12 21:51:28.06 AkqOEQdA.net
お題:ローカルホストの一覧を出力しなさい

755:デフォルトの名無しさん
18/08/12 23:20:11.13 YPN3vVTA.net
>>735
>>722って、
・抽選される6個の数字が43C6通りのどの組み合わせでも5等以上が当たるようにくじを買う。
・くじの購入数はできるだけ少なくなるようにする。
ってことじゃないのん?

756:デフォルトの名無しさん
18/08/12 23:45:52.09 3JJNsMDc.net
それ以外にどんな解釈が?

757:デフォルトの名無しさん
18/08/13 00:22:36.49 yY3qu6sZ.net
>>737
完全に恥ずかしい誤読しました。

758:デフォルトの名無しさん
18/08/13 04:38:57.55 z6+TJcGX.net
>>736
いいのかこんなんで?
cd /etc
grep localhost hosts

759:デフォルトの名無しさん
18/08/13 09:43:58.01 ux+ef9t8.net
>> 699 Ruby
実数、逆関数
URLリンク(ideone.com)

760:デフォルトの名無しさん
18/08/13 15:57:52.91 LVcLEl+f.net
>>736
訂正
お題:LANに繋がっているホストの一覧を出力しなさい

761:デフォルトの名無しさん
18/08/13 16:34:44.91 z6+TJcGX.net
>>742
Linux 等の UNIX 系OSで
ping -b ブロードキャストアドレス
とやると同じセグメントに繋がっているやつは ICMP ECHO を返して来て IP アドレスが分かるかも知れない。
但しファイヤーウォールの設定で返さないかも知れない。また他のセグメントにはパケット送らないのでわからない。

762:デフォルトの名無しさん
18/08/13 16:35:44.08 z6+TJcGX.net
あ、ごめん。これは IPv4 限定の話かも知れない。

763:デフォルトの名無しさん
18/08/17 15:41:32.33 N93NyTwd.net
身長と体重がいくつか与えられるのでBMIを求めなさい
なお身長と体重は1以上1000未満の整数とする
出力精度は小数第三位を四捨五入
各言語で一番短くかけた人が勝ち
例 ruby
while gets
end
# input
150 50
160 55
180 120
# output

764:デフォルトの名無しさん
18/08/17 15:47:03.36 N93NyTwd.net
ミスった。
単位は身長cm, 体重kg
例 ruby
while gets
 h, w = $_.split.map &:to_i
 puts '%.2f' % (1e4 * w / h**2)
end
# input
150 50
160 55
180 120
150 225
# output
22.22
21.48
37.04
100.00

765:デフォルトの名無しさん
18/08/17 17:20:36.25 6wrElEJt.net
URLリンク(ideone.com)

766:デフォルトの名無しさん
18/08/17 19:23:09.62 N93NyTwd.net
>>747
67Bまで縮めてみた
C
URLリンク(ideone.com)

767:デフォルトの名無しさん
18/08/17 21:08:30.56 7hC1UKUq.net
>>745
Perl
URLリンク(paiza.io)
普通ならダブルクォーテーション使いそうな箇所で qq() 使ってクォートしている理由は今Androidのタブレット使っててうまく入力出来なかったため。

768:デフォルトの名無しさん
18/08/17 23:22:41.44 eWaVkn5S.net
>>746
Python3で66バイト
URLリンク(ideone.com)

769:デフォルトの名無しさん
18/08/18 02:50:37.57 K3y6E3T8.net
鈴木貫太郎
灘中
URLリンク(youtu.be)
6桁の整数、ABCDEF の一番上の位のAを、
一の位へ移動した数、BCDEFA が、元の数の3倍になるとき、
この条件を満たす、元の数をすべて(2つ)答えよ
ヒント。x = BCDEF とおいて考える
答え、142857, 285714

770:
18/08/18 07:04:47.65 /9y7PjMS.net
>>751
n/7 循環列問題ですか…

771:デフォルトの名無しさん
18/08/18 15:32:13.56 h7OdrOPI.net
>>745
Ruby 43 bytes
#!ruby -pa
$_='%.2f'%eval('1e4/'+$F*'**2*')
>>751
3 * ABCDEF = BCDEFA ∧ A != 0
<=> 42857 * A = BCDEF ∧ A != 0
<=> 42857 * A = BCDEF ∧ A = 1, 2
<=> ABCDEF = 142857, 285714

772:デフォルトの名無しさん
18/08/19 01:16:27.70 tX8wxXbT.net
>>751 C(ただの力技)
URLリンク(ideone.com)

773:デフォルトの名無しさん
18/08/19 01:18:54.67 tX8wxXbT.net
お題:
1.BINGOカードを作る
2.BINGO抽選機を作る
ここで使われるビンゴカードは5x5のマス目に1から75までの数字が
ランダムに配置されており、数字が見つけやすいように左の列から
B列(1~15), I列(16~30), N列(31~45), G列(46~60), O列(61~75)が
配置された一般的によく使われるタイプ。
5x5のマスの中央はFree(すでに開いた状態)。
出力例:URLリンク(ideone.com)
(この形に従う必要はないです)
回答例(C言語):
 カード作成 URLリンク(ideone.com)
 抽選機 URLリンク(ideone.com)

774:デフォルトの名無しさん
18/08/19 03:52:23.20 FQWxbBlW.net
>>751
Kotlin
URLリンク(paiza.io)
これも力業だな。ただループして調べているだけ。
尚、最上位桁が0の場合も含めると0も該当する値になる。

775:デフォルトの名無しさん
18/08/19 04:55:18.29 FQWxbBlW.net
>>755
Kotlin
カード作成 URLリンク(paiza.io)
抽選機 URLリンク(paiza.io)

776:デフォルトの名無しさん
18/08/20 02:30:06.13 V9a8ZDkH.net
>>755
Perl
カード生成 URLリンク(ideone.com)
抽選機 URLリンク(ideone.com)

777:UNIXプログラミング質問スレより
18/08/21 03:04:43.91 34Jmks75.net
お題:【構造のあるテキストの処理】各項目の内容をそれぞれソートして元のテキストに埋め込め。
====== 標準入力 ==========
* Fruit
apple
banana
orange
banana
* Animal
dog
cat
penguin
====== 標準出力 ==========
* Fruit
apple
banana
orange
* Animal
cat
dog
penguin
条件:ソートには外部コマンドを用いること。

778:758
18/08/21 03:11:53.68 34Jmks75.net
ソートに外部コマンドを使うのは、テキストの処理を取り替える拡張を想定しています。
例えば sort -u コマンドを tr '[a-z]' '[A-Z]' に置き換えて
* Fruit
APPLE
のようにできるようにしたい。
UNIXプログラミング質問スレにて、
このような処理はシェルスクリプトには荷が重く Powershell や Ruby が向いている、みたいなことを伺いました。
ぜひ回答を参考にしたいです。

779:デフォルトの名無しさん
18/08/21 14:35:58.26 2YpoFUMY.net
>>759 Ruby
ext_cmd = 'sort -u'
ary = $<.read.scan(/\*.*?\n(?:(?=\n)|\z)/m)
str = ary.map.with_index do |s, i|
  temp_fname = "temp#{i}"
  File.write(temp_fname, s[/\n\K.*/m])
  heading = s[/\A.*/]
  execed = `#{ext_cmd} #{temp_fname}`
  File.delete(temp_fname)
  [heading, execed] * $/
end
puts str * $/

780:デフォルトの名無しさん
18/08/21 14:40:47.02 2YpoFUMY.net
catを使うように修正
catのヒアドキュメントさえ使えれば一時ファイル作らなくて済むんだけど
ext_cmd = 'tr a-z A-Z'
ary = $<.read.scan(/\*.*?\n(?:(?=\n)|\z)/m)
str = ary.map.with_index do |s, i|
  temp_fname = "temp#{i}"
  File.write(temp_fname, s[/\n\K.*/m])
  heading = s[/\A.*/]
  execed = `cat #{temp_fname}|#{ext_cmd}`
  File.delete(temp_fname)
  [heading, execed] * $/
end
puts str * $/

781:デフォルトの名無しさん
18/08/22 01:46:46.02 wb9Zg9xS.net
>>759
Perl
URLリンク(paiza.io)
項目の区切りは連続した2つの改行になってます。

782:デフォルトの名無しさん
18/08/22 01:56:27.69 PmiUKg2L.net
>>759 zsh
setopt rcquotes; sed -n '/^*/h; /^*/!{x;p;x;p;}' | paste - - \
| awk -F' ' -v OFS=' ' '$2 { print $1,$2 } ! $2 { printf "%c",0 }' \
| xargs -0 -n 1 -I@ -- zsh -c 'echo ''@'' | tee >(read -e | cut -f 1) | sed ''$d;'' | cut -f 2 | sort -u ;echo'
null区切りでチャンク分け。構造がもっと複雑になるとこの方針では対応できない。

783:デフォルトの名無しさん
18/08/22 03:09:32.13 wb9Zg9xS.net
>>759
bash
URLリンク(paiza.io)

784:デフォルトの名無しさん
18/08/22 04:46:03.18 h82tfzI1.net
単純に、別々のファイルに、分割すれば良いのでは?
* Fruit のファイル
* Animal のファイル
各ファイルを、sort, unique する

785:765
18/08/22 05:05:39.72 h82tfzI1.net
一旦、別々のファイルにしたなら、PowerShell で、
cat .\test.txt | sort | gu
gu は、Get-Unique のエイリアス。
漏れのPowerShell では、uniq のエイリアスは使えない

786:デフォルトの名無しさん
18/08/22 08:57:59.02 AfGRGNs6.net
このスレでbashが多いのは何故?

787:デフォルトの名無しさん
18/08/22 09:06:48.94 AfGRGNs6.net
今見返したらそんなに多くなかった‥

788:デフォルトの名無しさん
18/08/22 09:44:37.32 zudhoHB+.net
>>768
Linuxのディストリビューションでは最初からインストールされてるのがよくあってある程度有名で、sh互換でshしか知らなくても書けるからではないかな。
それとWebの実行環境があるというのも理由かも。こういう所で公開するのには都合が良い。

789:デフォルトの名無しさん
18/08/22 12:27:54.30 AfGRGNs6.net
>>770
そうなんですね!
みんなの回答見てると正規表現や少ないコードや難しい表現でコーディングできてて関心します‥
自分にはとても到達出来ない‥

790:泣gの名無しさん
18/08/22 15:46:06.44 PmiUKg2L.net
>>759 zsh
setopt rcquotes; sed -E -e 's:^(\* .*):{ echo ''\1''; sort -u; echo } << *:' -e 's:^$:*:' | zsh
xargsの区切り文字の辛さからは開放されたが、echo ''\1'' がイマイチだ。
なるほど、構造のあるデータはむしろファイル階層として表現したほうが自然か…

791:デフォルトの名無しさん
18/08/22 23:06:19.28 YlEU3d3x.net
>>759 Vim
$ cat odai-pt11-758.input | vim -es '+:g /\%(^\*.*\n\)\@<=/,/[ \t\n]*\%(\n\*.*\|\%$\)/ !sort | tr a-z A-Z | nl' '+%p' '+:q!' /dev/stdin
* Fruit
1 APPLE
2 BANANA
3 BANANA
4 ORANGE
* Animal
1 CAT
2 DOG
3 PENGUIN
$

792:デフォルトの名無しさん
18/08/22 23:55:42.77 h82tfzI1.net
64ビットWindows10 なら、WSL で、Ubuntu を入れると、
bash, vim, Python は最初から入っている
WindowsのExplorer では、BOMなしUTF-8 のファイルは検索できないから、
WSL でLinux側から、grep で検索している
シェルスクリプトの欠点は、パイプラインがテキスト渡しになる。
オブジェクトの型が無くなって、すべて文字列になる
一方、PowerShell ではオブジェクト渡しだから、オブジェクトの構造・型が維持できる
>>759-760
外部コマンドを切り替えるという抽象的な処理を、処理間にはさむのは難しい。
すべての処理の冒頭か最後で、一括でフィルターする方がバグらない

793:デフォルトの名無しさん
18/08/23 00:19:08.54 FMBOl46f.net
>>774
なるほど…
Powershellでの完全な回答例を見せていただけませんか?
標準入力からファイルに落として出力に吐くまで。オブジェクト渡しの雰囲気を感じたいです。

794:765
18/08/23 09:28:38.07 qUZ5eK5Q.net
Set-PSDebug -Strict # 変数宣言を強制する
$file = ( cat in.txt ) # 入力ファイル
$dat_basenames = @() # 拡張子なしのファイル名の配列
foreach ( $line in $file ) { # 各行
if( $line.Length -eq 0 ){ continue } # 空行は処理しない
if ( $line.Substring( 0, 1 ) -eq '*' ) { # 1文字目が、* なら
$fname = $line.Substring( 2 )
$dat_basenames += $fname # 追加
$fname += '.dat' # 拡張子つき
} else {
Add-Content $fname $line # 追記
}
}
foreach ( $dbname in $dat_basenames ) { # 各 .dat ファイル
$fname = $dbname + '.dat' # 拡張子つき
$str = "* ${dbname}`r`n"
$tmp = cat $fname | sort | gu # sort, unique
$str += ( $tmp -join "`r`n" ) # 改行区切り
echo $str
}
PowerShell で作った。
cd で、作業フォルダへ移動してから実行して
入力ファイル、in.txt から、各ファイルへ分割する。
分割後のファイル名を、Fruit.dat, Animal.dat として、各ファイルを処理した

795:デフォルトの名無しさん
18/08/24 05:00:24.02 QxK4Y8yu.net
点が10個一直線に並んでおり、各点が他の点との右方向の距離をいくつか知っている時、最も左にある点を求めよ
最も左にある点が求められない時はあと何の情報があれば求められるのかを最低個数で列挙すること
例1
a,b,cの点がある。
a点はb点が30右にあることを知っている。
b点は何も知らない。
c点はb点が-40右にあることをしっている。
結果
最も左にある点はa点
例2
a,b,c,dの点がある。
a点はb点が30右にあることを知っている。
b点は何も知らない
c点はd点が20右にあることを知っている。
d点は何も知らない。
結果
求められない。必要な情報は
a点からc点までの距離

796:デフォルトの名無しさん
18/08/24 05:58:44.74 rBPgXHvS.net
>>777
実際に自分で書いてみて、求められたら解答例を提示できる?

797:デフォルトの名無しさん
18/08/24 08:02:12.41 ZkSPfVdV.net
「知っている」の主語が点に見えるけど
そうじゃないよね?
なんでそういう文にしたの?

798:デフォルトの名無しさん
18/08/24 10:33:50.94 phPhGhWW.net
連結リストを使って、出来上がったグラフが連結なら求められる
つまり、出来上がったグラフが二つ三つそれ以上に分かれている非連結グラフになってると、距離は分からない
……直感的には多分こうだが、何かしらの証明は必要
「連結グラフだが距離が分からない」反例があればいい

799:デフォルトの名無しさん
18/08/24 11:28:11.41 qtSNV1ih.net
>>777
点が10個あるなら例1,2両方とも判断不能。どっちもあと最低7個必要
しかも直線がRなのかR∪∞∪-∞なのかで解が変わるから提示しろ
あと出力はともかくデータの与えられ方くらい提示しろ

800:765
18/08/24 12:34:38.87 ZgK6e0Tb.net
text = File.read 'in.txt' # 入力ファイル
header = ""
str_hash = { }
result = [ ]
def sort_string ( head, hash, res )
res.push head
Hash[ hash.sort ].each_key { |key| res.push key } # sort
hash.clear # 空にする
end
text.each_line do |line| # 各行
line.chomp! # 末尾の改行を削除する
next if line.empty? # 空文字は処理しない
if line.start_with? '*' # 先頭文字が、* なら
sort_string( header, str_hash, result ) unless str_hash.empty? # 空でなければ
header = line
else
str_hash[ line ] = true
end
end
sort_string( header, str_hash, result )
puts result
Ruby で作った。
PowerShell よりは断然、作りやすい。
ただ、sort_string( ) を2か所で呼ぶのが、ダサイ

801:デフォルトの名無しさん
18/08/25 17:43:06.40 nE7N9dPk.net
お題
将棋の初期状態の駒40枚を
利き筋に他の駒がないように配置する

802:デフォルトの名無しさん
18/08/25 20:05:04.08 486ljwsa.net
1000垓通り表示しろとでも?

803:デフォルトの名無しさん
18/08/25 20:45:34.12 WT6GNhg9.net
明記されてない条件は好きにしていいのがこのスレのルールですよ

804:デフォルトの名無しさん
18/08/25 20:55:52.54 N/q1MSK+.net
お題を出す前に出題者は自分の解答を(解くことが可能かの確認も兼ね)作っておくのもルールだ
適切な入出力例や問題文にあるべき条件が抜けてるっていうのはそれをやってない証拠

805:デフォルトの名無しさん
18/08/25 22:57:36.63 yggGxXGy.net
>>783
有名な作品がいくつかあるね
全て同じ方向を向いたヤツも
>>784
全ての組み合わせを数えた人がいるの?

806:デフォルトの名無しさん
18/08/26 08:39:25.15 8NHhsyIb.net
トランプの配置についてのアルゴリズムを考えてます。
トランプの横幅をX
トランプの高さをYとし
並べるトランプは偶数枚
全てのトランプを配置した時の全体を、トランプ配置と呼ぶとして
トランプ配置の横幅と縦幅の割合を、おおよそX:Yとしたい
この場合、アルゴリズムはどう考えたらいいでしょうか?

807:デフォルトの名無しさん
18/08/26 09:35:40.65 /JFPzkHn.net
ゴリ押しの総当たり
並べる枚数横にx縦にyが無尽蔵に大きくなれば比率に近づく
並べるトランプの上限が決まって無くて偶数枚だけが条件なら延々と並べる枚数を増やせばいい
一兆枚くらい並べれば比率はX/Yに近づく
1000000000億兆枚くらいのトランプを使えば横幅X高さYなんて充分に蟲出来るから全体の割合を調整するのは枚数が多ければ多いほどラク
10那由多ほど並べれば、本当にカードは点くらいなもので、縦横比率はx、yの枚数だけで決まる

808:デフォルトの名無しさん
18/08/26 09:52:42.49 O9adGcKd.net
>>788
おおよそとかいまいちよくわからん
例を示して

809:デフォルトの名無しさん
18/08/26 09:59:10.89 O9adGcKd.net
>>789
バカなの?
> 並べるトランプの上限が決まって無くて偶数枚だけが条件
なら、縦横2枚ずつ(計4枚)並べればいいだけ

810:デフォルトの名無しさん
18/08/26 11:08:57.34 MXsSoN4T.net
n枚をnX nYの長方形の対角線上に斜めにならべれば
X:Yになるけど
問題あってる?

811:デフォルトの名無しさん
18/08/26 13:16:22.70 HHP/3bjy.net
>>788
┌─┐
│ ?│
└─┘
これを偶数枚並べて縦横比同じにするなら
こうだよね

┌─┬─┐
│ ?│ ?│
├─┼─┤
│ ?│ ?│
└─┴─┘
アルゴリズムもクソもないように思うのだが?
問題の書き方間違ってない?

812:デフォルトの名無しさん
18/08/26 13:22:25.82 6zIp6UvA.net
さすがに、
枚数は外から与えられるのでは?

813:デフォルトの名無しさん
18/08/26 16:57:45.44 2xrJOS4Z.net
枚数nに対して p * q = n を満たす正の整数 p, q の内 |p - q| / |p^2 + q^2| が最小になる組み合わせを求めるだけでしょ?

814:
18/08/26 23:44:29.53 TLwXHnMN.net
スレリンク(tech板:981番)
に引き続いて、現に困ってしまった問題を出題
windows コマンドラインの xcopy コマンドを実装せよ
コマンドラインから「xcopy パス1 パス2」 と入力すると
パス1 以下にあるファイルをすべてパス2以下にコピーするようにせよ
ディレクトリについては、再帰的にコピーせよ
・現実の xcopy コマンドには色々なオプションがあるが、それは実装しなくてもよい
・読み込み対象のファイルの属性については考慮しなくてよい、読み込めるファイルのみ所定のパスにコピーできればそれでよい
・その他、コピーに問題のある状態が発生したときには、標準エラー出力にエラー内容を表示すればそれでいい
Windows Update の度にPCが激遅になるのに堪えかねて、C ドライブを SSD に換えることにしました。OS は再度インストールしなおすつもりです。
現在の C ドライブの内容は別途コピーしておいて、困ったときには参照できるようにしたいと思いました。
ところが、「xcopy c: x:/tmp」とすると、「メモリーが足りなくなった」といって途中で止まるのです…困りました…

815:
18/08/26 23:57:13.93 TLwXHnMN.net
>>796
条件を追加します
ハードリンクやシンボリックリンクは考えなくともよい
xcopy パス1 パス2
のパス2 がパス1 の下にある場合、実装がまずいと永遠にコピーし続ける困ったことになるが、それも考慮しなくてもよい
(今回やりたいことは、「xcopy c: x:/tmp」であるので、これが問題なく動けばそれでよい…)

816:デフォルトの名無しさん
18/08/27 00:30:49.02 FMLlc3nv.net
お金くれたら書くよ

817:
18/08/27 00:37:15.85 W4qvSHyH.net
>>798
ビットコインではいかがでしょう?

818:デフォルトの名無しさん
18/08/27 03:58:54.01 EFFRlxLO.net
>>796
URLリンク(qiita.com)
xcopy メモリで検索したらこんなページ出たがこれじゃあかんと?

819:デフォルトの名無しさん
18/08/27 10:42:11.16 ywsjsNTA.net
>>796
Windowsならエクスプローラ使ってただコピーするのでは何か不都合があるのか?
まあ、お題としてそういうのなしで作れというのはアリだが、なんとなくWindowsの場合はエクスプローラが使っているのと同じライブラリ関数を一回呼び出すだけで終わってしまいそうな気がしてならない。

820:デフォルトの名無しさん
18/08/27 11:41:58.10 ba8BcfX3.net
xcopy ではなく、robocopy を使えば?

821:デフォルトの名無しさん
18/08/27 21:06:25.46 wliJqEsP.net
>>793
他の人も勘違いしてるけど、横縦比をx:yにする問題だよ。おおよそらしいけど。

822:デフォルトの名無しさん
18/08/27 21:25:27.41 C1HpzEi0.net
>>803
問題を読んでみな

823:デフォルトの名無しさん
18/08/27 21:34:12.17 wliJqEsP.net
失礼しました…

824:デフォルトの名無しさん
18/08/27 21:37:25.51 l2rfNjjd.net
>>803
トランプの横幅がYで高さがXでしょ?
で、偶数枚並べてX:Yにするんでしょ?
4枚でなるじゃん。およそどころかぴったりX:Yに。

825:デフォルトの名無しさん
18/08/27 21:41:44.66 l2rfNjjd.net
ごめん。逆か。まあしかしわかるよね。

826:
18/08/28 00:09:17.09 mZeP8xuo.net
>>796-797
スレリンク(tech板:52番)
>>800
有用な情報ありがとうございます
なるほど、256バイト以上のパスは受け付けない、ですか…
MSDN URLリンク(msdn.microsoft.com)
なんかをみると、「この関数の Unicode 版を呼び出し、パスの前に "\\?\" という接頭辞を追加してください。」と書いてありますね
でも、C++ でユニコードバージョンに対応させるってどうするのだろう?#define UNICODE だけではダメみたいだし…

827:デフォルトの名無しさん
18/08/28 00:22:03.08 LPHHle1d.net
>>808
URLリンク(qiita.com)
CreateFileW

828:デフォルトの名無しさん
18/08/28 00:26:01.26 04IHxsB7.net
>>808
そろそろ適切なスレに移動したら?

829:
18/08/28 00:29:32.20 mZeP8xuo.net
>>810
>適切なスレ
って、あなたはどこを想定しているのですか?

830:デフォルトの名無しさん
18/08/28 02:44:52.27 Z7hOIgIF.net
スレタイも読めないのかこいつは・・・

831:デフォルトの名無しさん
18/08/28 10:27:46.88 QGrjhPlD.net
>>806
流石に与えられた枚数は全て使うだろ
アスペかよw

832:デフォルトの名無しさん
18/08/28 16:31:53.27 C1AWmFJx.net
>>813
与えられると何処に書いてある?

833:デフォルトの名無しさん
18/08/28 18:47:35.73 4ROMapnq.net
とりあえず>>788はちゃんと問題書くか取り下げるかしろよ…

834:デフォルトの名無しさん
18/08/28 22:17:12.42 QGrjhPlD.net
>>814
近似値も想定している文意から汲めないならアスペ

835:デフォルトの名無しさん
18/08/28 22:36:38.28 Gymzh0gE.net
>>816
とりあえずお前の解釈を書いてみな

836:デフォルトの名無しさん
18/08/28 23:00:50.43 QGrjhPlD.net
>>817
ぱっと見て
カードの数nとカードの縦と横の長さx, yが与えられたときに
総てのカードを並べて作った矩形の縦と横の長さをX, Yとして
|X/Y - x/y|が最小になるような(X, Y)を求める問題かと思ったんだけど
というか>>788は言葉足らず過ぎるしアスペ云々は言い過ぎだったわすまん

837:デフォルトの名無しさん
18/08/28 23:15:02.28 Gymzh0gE.net
n枚を矩形になるように並べる
なんてことは書いてないけど
あと
『|X/Y - x/y| が最小』
は数学的センスが無い
x,yを入れ替えても値が変わらない誤差の定義にしたい

838:デフォルトの名無しさん
18/08/29 00:49:59.45 e0sa1Xvi.net
>>819
矩形じゃないと縦幅と横幅が定義できないからそ�


839:アはいいんでない? >『|X/Y - x/y| が最小』は数学的センスが無い はその通りだね m := min{x, y}, M := max{x, y}, λ_x = X, λ_y = Y として として |m/M - λ_m/λ_M|の最小値を求めるべきだね



840:デフォルトの名無しさん
18/08/29 08:01:13.69 cDvJjkNL.net
>>820 前半
どんな形に並べても縦と横の方向が決まっていれば縦幅と横幅はある
>>820 後半
さらにセンスが無い

841:デフォルトの名無しさん
18/08/29 08:06:49.08 e0sa1Xvi.net
>>821
『どんな形に並べても縦と横の方向が決まっていれば縦幅と横幅はある』
これは偽
少しは検討してから書き込んだらどうなんだ
後半が理解できないなら「テンソル」で調べてね

842:デフォルトの名無しさん
18/08/29 08:18:18.70 cDvJjkNL.net
横方向をx軸、縦方向をy軸としたx, y平面上に
トランプを並べるとする
有限サイズ(>0)のトランプを有限枚(>0)並べるので
トランプは有界で非空
xの上限 - xの下限 = 横幅
yの上限 - yの下限 = 縦幅

843:デフォルトの名無しさん
18/08/29 08:21:39.47 cDvJjkNL.net
>>820 後半
さらにセンスが無い

844:デフォルトの名無しさん
18/08/29 08:41:09.91 F6DjsKzv.net
オレオレ解釈でマウント取合いかよ w

845:デフォルトの名無しさん
18/08/29 09:24:22.25 e0sa1Xvi.net
>>823
勝手な距離空間持ち出してこないでくれませんかねぇ

846:デフォルトの名無しさん
18/08/29 12:43:01.20 r/8waa6p.net
勝手な距離空間www
後に引けなくなってさらに痛くなる

847:デフォルトの名無しさん
18/08/29 17:30:59.79 e0sa1Xvi.net
はいはい。頭いいね坊や
今度からは算数をきちんと勉強してからレスしてね

848:デフォルトの名無しさん
18/08/29 19:00:11.58 bZ2D0xRL.net
>>816
お前は勝手に汲み過ぎ

849:デフォルトの名無しさん
18/08/29 19:03:26.04 e0sa1Xvi.net
>>829
はいはいよかったですねー

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個ランダムで選ぶことができるもの

1.2.5.6.16.18.20.21.23.28.30.33.39.4047.49.50の選択した数字中から10個ランダムで選ぶことができるもの
①と②で挙げた数字は適当ですが場合によっては①で除外した数字や②の選択した数字は変えたいです
このような場合自分でプログラミングしないといけないのでしょうか?

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.
"②"
#(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!      彡、  `Ⅶエ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 のリンクの問題は「エントリー後メールにて送付されるコーディング試験問題」ではないから①に反しない…②
さらに、無条件に誰でも見ることのできる問題であること…③
②よりアウトではないと断定できるし、③が②の結論を補強する
結論として、>>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ならそもそも問題として成立しないだろ

1006:デフォルトの名無しさん
18/09/24 16:14:35.67 twjLvrgB.net
>>975
Kotlin
但し、重複選択は考慮していない。
URLリンク(paiza.io)

1007:デフォルトの名無しさん
18/09/24 19:57:46.70 6VO2RDhD.net
>>970
ルール合ってるのかどうか知らないけど
ゲーム風にしてみた (Win専用)
URLリンク(fast-uploader.com)
PASS:11957
慣れると何となく解き方のコツが見えてくる
今まで解けなかった例は無さげ

1008:デフォルトの名無しさん
18/09/24 20:25:58.77 8mxLASGw.net
任意のパターンで解けることはここですでに言及されてるよ

1009:デフォルトの名無しさん
18/09/25 00:18:48.94 sMuinsuC.net
エビングハウスの忘却曲線っていって人間のベストな復習間隔があるんだけど
例えば今日勉強したことは明日復習して3日後、1週間一ヶ月ごとに復習すると完全に長期記憶になる
これをスマホアプリで管理するプログラミングしたい
理屈は簡単、カレンダーに今日覚えたことを「○○の20-40ページ」とか記入して
明日になったら今日やる復習を表示してくれるシステム
プログラミングのプの字も知らんのだ
どの言語を使うとかもわからんmacとxcodeはある
どういう作り方すればいいかわからない教えてください個人用に使う

1010:デフォルトの名無しさん
18/09/25 02:12:07.33 JXqOIinx.net
ここはそういうスレではないよ

1011:デフォルトの名無しさん
18/09/25 02:40:25.79 VjhU4mZC.net
>>987
このスレはそういう質問するスレではなく、誰かがお題を出して回答したい人がプログラミングして回答するスレだ。
そういう質問はまずは既存のソフトでそういうことが出来るのがないか以下のスレで聞いた方が良いと思う。
気軽に「こんなソフトありませんか?」Part.176
スレリンク(software板)
それからどうしてもプログラムを自分で作ってみたいというのであれば何らかの言語を覚える必要があるが、
MacやiPhoneの場合は何が良いのか俺はよく知らない。この頃だと Swift なんだろうか? Swift は確か xcode
使って作れたと思うが、詳細は今の俺には分からん。MacOSやiOS関係のスレを探して聞いてくれ。

1012:デフォルトの名無しさん
18/09/27 22:18:07.66 /SCmCNkm.net
お前らってファイルそのものへの参照を禁止したうえでquineを自力で書ける?

1013:デフォルトの名無しさん
18/09/27 23:09:56.51 TEegUJED.net
もう少し詳しく

1014:デフォルトの名無しさん
18/09/28 01:19:09.36 voc6Rn8M.net
次スレは

1015:デフォルトの名無しさん
18/09/28 10:09:57.20 phwOkayR.net
次スレ
プログラミングのお題スレ Part12
スレリンク(tech板)

1016:デフォルトの名無しさん
18/09/28 21:10:47.83 WW7qy9i/.net
埋め

1017:デフォルトの名無しさん
18/09/28 21:28:45.12 CwsEryp/.net
うめ

1018:デフォルトの名無しさん
18/09/28 21:28:53.05 CwsEryp/.net
うめ

1019:デフォルトの名無しさん
18/09/28 21:29:01.92 CwsEryp/.net


1020:デフォルトの名無しさん
18/09/28 21:29:15.02 CwsEryp/.net


1021:デフォルトの名無しさん
18/09/28 21:29:28.35 CwsEryp/.net
あさうめ

1022:デフォルトの名無しさん
18/09/28 21:29:36.27 CwsEryp/.net
うめ

1023:デフォルトの名無しさん
18/09/28 21:29:44.58 CwsEryp/.net
うめ

1024:1001
Over 1000 Thread.net
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 157日 0時間 44分 30秒

1025:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch