スレ立てるまでもない質問はここで 149匹目

■ このスレッドは過去ログ倉庫に格納されています
2018/05/18(金) 10:22:17.79ID:8Lfa78Q00
質問する前にGoogleで検索しましょう。 http://www.google.com/
プログラム・ソフトの使い方は PC 初心者板やソフトウェア板へ。
ウイルス、ハッキング・クラッキングを求めるような発言は禁止です。
Javascript は Web 制作板、CGI は Web プログラミング板へ。
業界談義、愚痴はプログラマ板へどうぞ。
ゲーム関係の話題はゲーム製作板へどうぞ。
ネタ、板とは関係の無い話題はご遠慮ください。

前スレ
スレ立てるまでもない質問はここで 148匹目
https://mevius.5ch.net/test/read.cgi/tech/1495618637/

注意「〜と〜はどっちの方が○いですか?」みたいなのは
このスレの粘着荒らしですので無視してください
VIPQ2_EXTDAT: checked:vvvvvv:1000:512:----: EXT was configured
799デフォルトの名無しさん (ワッチョイ cde4-zEwp [180.92.25.241])
垢版 |
2018/08/30(木) 03:30:02.37ID:GIqOSAdb0
ハーバード大学数学科を首席入学&卒業したい。
2018/08/30(木) 10:56:34.64ID:SR5cBUkwd
>>797
失礼しました
暗号化/復号に使う鍵の間違いです
2018/08/30(木) 11:02:00.77ID:SR5cBUkwd
>>796
ありがとうございます。
javaやvb.netの場合その関数はどこに作るのがよいでしょうか
>>795
ありがとうございます。拡張メソッドの使い方を勉強してみます
また、セキュリティに関するアドバイスも大変勉強になります。主旨とずれるのでここでこれ以上の質問は避けますが、もう一度考え直すことにします
2018/08/30(木) 13:04:37.16ID:io9LYUoZ0
値保有する必要が無いなら単にstatic関数作って引数もらえばいいんじゃないの
2018/08/30(木) 14:37:29.78ID:39ABXWI9d
それを誰が持つかが問題なのでは。
拡張メソッドも実のところ単なる静的関数だけど、usingしたソース(使いたいシーン)だけで出てくるメンバ関数に見える存在なので、
単にUtil.KeyUtil.ComputeKeyみたいな深いUtilクラス作るより収拾がつきやすいとか、
宣言無しでは使えないので依存関係が頭のusing(VBで何だったか忘れた)見るだけでわかりやすいとか、
それぐらいのメリットでしか無いし。
2018/08/30(木) 21:09:31.99ID:ZfEtghLR0
>>801
desクラスでも作ってそこにメソッド置けば?
805デフォルトの名無しさん (ワッチョイ d103-mxdc [202.157.118.132])
垢版 |
2018/08/30(木) 21:16:56.18ID:ckC0jGgS0
deathよね〜
2018/08/30(木) 22:28:53.54ID:/0YXnEsV0
class des {
public:
 static encript(char const* encrypt_key, char const* plain_text, char* encript_text);
 static decript(char const* decrypt_key, char const* encript_text, char* plain_text);
}

デデーン
2018/08/30(木) 23:06:04.46ID:84fjp1F/d
class des {
public:
 static int encrypt(char *encoded, const char *key, const char *raw);
 static int decrypt(char *decoded, const char *key, const char *encoded);
};
808デフォルトの名無しさん (ワッチョイ a619-zEwp [113.197.43.69])
垢版 |
2018/08/30(木) 23:09:47.44ID:iwdp+fve0
YouTubeを作った人は天才なのでしょうか?
自分も、YouTubeみたいな世界的な超有名サイトを作って、大金持ちになりたいです。
具体的にどうすれば良いですか?
2018/08/30(木) 23:10:05.69ID:51/MDOyO0
異世界に飛んで無双状態で人生をやり直したい
https://mevius.5ch.net/test/read.cgi/tech/1535627585/
810デフォルトの名無しさん (ワッチョイ cde4-zEwp [180.92.26.25])
垢版 |
2018/08/31(金) 02:11:23.03ID:mf7WeN3Z0
リーマン予想とかP≠NP予想とかを自分一人の力だけで証明したい。絶対に実現してやるからな。
2018/08/31(金) 23:09:51.16ID:QQuNEm020
C++でゲーム作りたいんだけどどうやるんですか?
DXナントカ使うしかないんですか?
2018/09/01(土) 08:26:44.25ID:edypo8hY0
最近気づいたんですが
プログラムを書こうとしても入門書で習ったコードとほぼほぼ同じようなものしか書けません…
この板でお勧めされてる入門書2冊を読み切ったのにです
もしかしたら、ただコードを暗記してるだけで本当は本の内容理解出来てないんじゃないか?とか色んな不安を感じてきてます
2冊も読んだら応用的なコードもそれなりに書けるとイメージしてたんですが・・
向いてないと言われればそれまでなんでしょうが……
色んなパターンのコードが書けるようになりたいです。何かアドバイス下さい
もうプログラミングを始めて1ヶ月経ちました
2018/09/01(土) 09:44:59.95ID:/xY33kfI0
次の勉強はアルゴリズムかデザインパターンかってところじゃね
2018/09/01(土) 09:45:34.95ID:hX7+YOkXp
何か作りたいものはないのかな?
それを作るためには、あなたの知ってるパターンをどう使うのが適切か?
を自分で考える。
2018/09/01(土) 12:13:11.76ID:vHWSlLkY0
英語とかと似てる
本読むだけじゃ身につかない
コードをいっぱい書くしかない
やってる密度にもよるけど、始めて1ヶ月じゃそんなもんでしょ
2018/09/01(土) 13:02:33.96ID:8oBLXasxM
>>812
プログラムは入力を受け取ってそれを表示するだけ
画像だろうが文字だろうが同じ
アドバイスなぞない
2018/09/01(土) 15:04:32.34ID:lb2h//8sa
>>812
本を読んで教えてくれることをただ受けとるだけでは上手くなることはないだろう。
本を読んで、その中で疑問に思ったり、こんなことはでないのかなと思ったことはない?あるなら、実際にコードを書いてあれこれ試してみれば、自然と上達するはず。
そういうことが特に何もなくて自発的に書こうとすることがないなら、この先も厳しいと思う。
2018/09/01(土) 20:59:54.63ID:edypo8hY0
なるほど。実際に書く書かないで理解の差が出てしまっているんですね・・・
一応VisualStudioインストールして載ってるコードをそのまま写して実行とかはやってたんですけど
受け取ったアドバイスを見るにただ本のサンプルを写して終わりってのがあまり良くないんですね…
そこから何か自分で考えて色々書き換えて試すのが重要なんですね
作りたいものは綺麗なGUIアプリと漠然と決まってますが今まで読んだ入門本の知識を総動員しても
無理なのであまりイメージが沸かないですね…
とりあえず自分でコードを考えて書くのを意識しながら今読んでる入門書を読破してみたいと思います
アドバイス大変ありがとうございます
819デフォルトの名無しさん (ワッチョイ fae3-zBrR [123.230.96.240])
垢版 |
2018/09/01(土) 21:06:08.02ID:sc/dGYpO0
recaptchaみたいに、特定の画像をマス目に分けて、リンゴっぽく見えるものは?という質問をして
それのデータを蓄積するということをしたいのですが右も左も分かりません
Pythonの本とディープラーニングの本から始めればいいのでしょうか?
人間が画像を解析して、その結果をコンピュータに学習させ、人間には見えず、コンピュータには見えるものを浮かび上がらせる
ということがしたいです
たとえば人間は先入観のせいで、人間の尻を尻として理解しますが、コンピュータは人間の尻をリンゴそっくりだと判定するかもしれません
820デフォルトの名無しさん (ワッチョイ cd80-rkYf [180.4.84.249])
垢版 |
2018/09/01(土) 21:09:12.57ID:/wwW4VSs0
人間はおっぱいをお尻と理解するから
ちんちんが勃つ
821デフォルトの名無しさん (ワッチョイ d103-mxdc [202.157.118.132])
垢版 |
2018/09/01(土) 21:11:11.27ID:MpWrJr2V0
おっぱいはおっぱいとして愛せよ
2018/09/01(土) 21:11:26.09ID:/xY33kfI0
その無理なのでってのがまず何ができないかっていう具体的な質問に変わるだろ?
823デフォルトの名無しさん (ワッチョイ cd80-rkYf [180.4.84.249])
垢版 |
2018/09/01(土) 21:21:37.34ID:/wwW4VSs0
たとえばなアプリに
エロ画像ファイルを入力する

機械学習使ってエロ画像判定を行う
それがエロ画像なら勃起アイコン
それがエロ画像でないなら勃起してないアイコン
を表示する

まずそういうのから始めたほうがいい

コレができたら自動エロ画像収集クローラーに応用できる
2018/09/01(土) 21:32:07.66ID:edypo8hY0
>>822
今まで読んだ本がプログラミングの基礎の基礎的な構文、仕様を説明してる本で
アプリに繋がるような事が書いてる本ではなくて
GUIとかはまた別の構文とか習わなきゃ書けないと思うのでそれを意識してコードを書くのは
今の段階では無理という意味でいいました。まだ習ってないので飛躍してるかなっと思って
言葉足らずですいません
825デフォルトの名無しさん (ワッチョイ cd80-rkYf [180.4.84.249])
垢版 |
2018/09/01(土) 21:37:14.21ID:/wwW4VSs0
別の構文なんか不要
文法覚えたらあとは文法どおり関数を呼び出すだけだ
心配することはない サルにでもできる

この板にいるサル程度の知能のヤツラでもできる程度のことだからな
2018/09/02(日) 01:14:45.68ID:lbrLHNhd0
>>823
回答ありがとうございます
それでは機械学習の入門書から当たってみます
いくつかライブラリのほうを検索してみましたが言語はやはりPython率高いですね
ユーザーからも画像データを投稿して貰いたいので、最終的にはAWSなどを借りることになると思います
2018/09/02(日) 10:27:15.60ID:Y7XDImUw0
エロ動画を管理するGUIプログラムを作りたいです
主な機能は
・動画タイトルを参考にしてdmmからサムネイルを取得する
・ニコニコ動画のようにタグ付けを行い検索しやすくする

わからないことは
・どのようなプログラミング言語、GUIライブラリで可能なのか
ということです
最適ではないにしても可能であれば、PythonとTkInterを使おうと考えています
Pythonであれば他にも面白そうなことができると思うからです

以上よろしくお願いいたします
2018/09/02(日) 10:49:02.10ID:2MB1sm/w0
自分も似たような事悩んでた頃あったよ
本読んで勉強してとりあえずやりたい事(仕事)では最低限のものが書けるようになった
その都度調べてこっちのが綺麗にかけるとかパフォーマンス良いとか少し気を使ったモノが掛けるようになった
でも職場では周りに技術者て言える人はないしレビューみたいなシステムもない零細だからスキルが上がってるかは不安がある

結局なんで不安かって言ったら自分が趣味で作りたいと思えるものに結びつかなくて出来ることが仕事周りの極一部で止まってるから
何でも良いから色々と手を出して手を動かして作るのが大切と気づいた
829デフォルトの名無しさん (ワッチョイ 5db3-kXjm [126.2.156.50])
垢版 |
2018/09/02(日) 14:05:37.54ID:afAC58Ps0
Twitterのソースって公開されてますか?
2018/09/02(日) 15:03:10.46ID:5WqNet320
スクレイピングなら、Ruby で、Selenium WebDriver で、ブラウザを操作する。
JavaScript のElectron とか

どちらにせよ画面は、HTML
831デフォルトの名無しさん (ワッチョイ a619-3VZ1 [113.197.43.29])
垢版 |
2018/09/02(日) 16:01:49.19ID:LkXczlTJ0
まずは東大に入り、そこを断然トップの成績で卒業し、
院はハーバードかオックスフォードかケンブリッジあたりに入りたい。
教授に推薦してもらえるように頑張りたい。
2018/09/02(日) 23:41:59.42ID:8/DgTiCJ0
他所で無視されたからここで聞くがスーファミのマリカーの3D表現の仕組みが分からん。
コース全体の地面の画像があってそれから切り出して遠近法ぽく表示してるの?
2018/09/03(月) 02:19:20.25ID:eAPS1KPe0
実際のマリオカートがどうやってるかは知らないが
画像の回転・拡縮、あとは台形のような変形ができれば可能っぽいな

レトロゲーム板あたりの人のほうがSFCの技術仕様には詳しそうではあるが
834デフォルトの名無しさん (オッペケ Sr05-SVk4 [126.204.197.89])
垢版 |
2018/09/03(月) 09:52:44.26ID:5V1jLThdr
Ruby始めたんですが、ATOMとVS code、どちらを使えばいいのかわかりません……
ATOMと方がテーマが沢山あって、MOMOKAI NEOとかめちゃくちゃ見やすいです。でも重いし、あんまり使ってる人がいない印象です。
VS code ATOMより軽いですが、テーマに魅力がなく、機能的に ATOMよりどこが優れているのか分かりません。でも多くの人がVS codeを勧めているので、 ATOMよりそっちの方がいいのかな……というきもします。
好きな方を使えという話だとは思いますが、ご意見をください。
2018/09/03(月) 13:14:44.33ID:7Dqd1+bWM
>>834
vim
2018/09/03(月) 13:45:18.03ID:eAPS1KPe0
>>834
そりゃVS Codeは
ATOMとかそのへんを参考の1つとして作られたものって言われてるしな
同じようなものになるのは当然

ただ腐ってもVS、IDEのデファクトスタンダードの名前を冠しているだけあって
最初からコーディングを前提に設計されているエディタだし
当然そういったコミュニティ(サポートや拡張機能)にも強い
最近はMSのOSS界隈への信頼もそれなりに高いしな

まあちょっと触ってみてATOMのほうが魅力的だと思うなら
素直にその魅力的な方を使うべきだろうな
837デフォルトの名無しさん (ワッチョイ 0e4b-J7KC [39.111.201.160])
垢版 |
2018/09/03(月) 15:21:22.45ID:4e3KIn0N0
オブジェクト指向のプログラミングはなぜメイン関数でインスタンスを作ってrunメソッドを呼ぶだけで動くのですか?
runがメイン関数ということですか?
2018/09/03(月) 16:35:38.48ID:eAPS1KPe0
>>837
非オブジェクト指向の関数で、main関数の中でとある関数を呼んだらソレだけで動きました
何故ですか

これに答えれるなら、それがそのまんま答えだ
2018/09/03(月) 17:49:39.64ID:ttVcJTrG0
そりゃ、Atom よりも、VSCode だろ。
使っている人数が多いから、拡張機能が充実してる

Ruby, JavaScript, HTML, CSS, DB, webサーバー、テストツールなど
840デフォルトの名無しさん (ワッチョイ cde4-zEwp [180.92.25.61])
垢版 |
2018/09/04(火) 09:50:53.47ID:UQTw5g1C0
定期運送用操縦士と電験一種はどっちの方が凄いですか?
2018/09/04(火) 10:17:29.89ID:ROt4XEkp0
>>840
こちらへどうぞ

異世界に飛んで無双状態で人生をやり直したい
https://mevius.5ch.net/test/read.cgi/tech/1535627585/
842デフォルトの名無しさん (ワッチョイ cde4-zEwp [180.92.19.135])
垢版 |
2018/09/04(火) 11:01:22.73ID:CcTXYXRL0
今、思索をしていて哲学上の壁にぶつかってしまっている状態。
どうすればここを突破できるのだろうか・・・・・・・・・・?
こういう時、どうすれば良いのだろうか・・・・・・・・・・・・?
ただひたすら思索を続けるしか方法は無いのだろうか・・・・・・・・?
2018/09/04(火) 11:07:40.28ID:r5PdIOtW0
紙に書く
844デフォルトの名無しさん (ワッチョイ cde4-zEwp [180.92.19.135])
垢版 |
2018/09/04(火) 11:11:47.30ID:CcTXYXRL0
果たして俺はここを突破できるのだろうか・・・・。
845デフォルトの名無しさん (ワッチョイ d103-mxdc [202.157.118.132])
垢版 |
2018/09/04(火) 20:42:18.11ID:RaX7EawA0
トッパ!てすげえ言いたくなるよな
2018/09/05(水) 02:09:54.61ID:5CFS0rlAM
「吶喊」もいいぞ
847デフォルトの名無しさん (ラクッペ MM35-BaxO [110.165.201.156])
垢版 |
2018/09/05(水) 12:52:41.62ID:b1qw9eMxM
pythonのpipみたいにライブラリ管理できるコンパイル言語ある?
Cはできないよね…
2018/09/05(水) 12:55:31.57ID:32Pq/O6Ed
Goとか?
849デフォルトの名無しさん (ラクッペ MM35-BaxO [110.165.201.156])
垢版 |
2018/09/05(水) 12:57:06.69ID:b1qw9eMxM
>>848
Goはできるんだ
Cではできないよね?
2018/09/05(水) 14:36:08.30ID:R+4s3SpN0
nuget
arduino
2018/09/05(水) 20:44:07.73ID:Fyy8ihVl0
ちょっと曖昧な質問なのですが。
動きのあるWebページを作成する言語はJavascript以外、何があるでしょうか?
2018/09/05(水) 20:50:24.85ID:V+4xGO3Hd
HaxeとかWebGLとかあるよ。
2018/09/05(水) 21:20:16.36ID:Fyy8ihVl0
ありがとう
ぐぐってみるわ
854デフォルトの名無しさん (ワッチョイ cde4-3VZ1 [180.92.25.85])
垢版 |
2018/09/05(水) 22:36:41.91ID:JjJb5jou0
油井亀美也とデミス・ハサビスはどっちの方が頭が良いですか?
855デフォルトの名無しさん (ラクッペ MMb7-b4n1 [110.165.184.165])
垢版 |
2018/09/06(木) 12:50:25.80ID:ntAiYVJqM
ロボットプログラマーになりたいんですが情報系じゃなく機械系に行った方がいいですまか?
知能ロボティクスやりたいです
2018/09/06(木) 15:11:54.86ID:dyZlchm/M
>>855
どっちでもなれるから情報でいいよ
857デフォルトの名無しさん (ワッチョイ 57e4-oqjt [180.92.27.8])
垢版 |
2018/09/06(木) 20:49:58.18ID:sGO0vKSf0
http://www.meiwasuisan.com/frame/

↑こういう感じの巨大画像掲示板を作って、
それの運営だけで生計を立てていきたいのですが、
こういう感じの巨大画像掲示板って作るのにどれくらいの時間がかかりますか?
858デフォルトの名無しさん (ワッチョイ 57e4-oqjt [180.92.27.8])
垢版 |
2018/09/06(木) 21:02:07.56ID:sGO0vKSf0
自殺をするか迷う。
2018/09/06(木) 22:33:00.93ID:/FBP4qjC0
>>855
情報系だと純粋にソフトウェアだけをやってるところがある
機械系だといまどきプログラムを書かないところはない

両方やりたいなら機械系がいいのでは
2018/09/06(木) 23:53:05.84ID:/QfWx8WC0
モデリングと作曲が趣味なのでそれを活かしてゲームを作りたいと考えました
調べた結果unityに行き着きましたがどうやらc#が必要な様なので勉強したいのですが何から手をつけていけばいいのでしょうか
まずは本を買って読んでコードを写していけばいいですか?
プログラミングはプの字すら触れたことがありません
2018/09/06(木) 23:54:02.53ID:/QfWx8WC0
申し訳ありません
ゲーム関係の質問はngだったようですね
失礼しました
2018/09/07(金) 04:59:43.53ID:JfCwi3SQ0
>>860
ゲームでもゲーム以外でも同じ
工作とかプラモデルなんかの感覚で、とりあえず手を動かしてみればいいと思うよ
863デフォルトの名無しさん (ワッチョイ 57e4-mtC5 [180.92.27.181])
垢版 |
2018/09/07(金) 12:29:58.49ID:COOLyeCY0
誰か>>857の質問に答えてください。
2018/09/07(金) 12:41:21.82ID:dfq99u5c0
>>863
人による

上手い人がやればマリオをワープなし20分でクリアできるが
下手な人は何時間もかかるどころか、クリアできない
https://rocketnews24.com/2016/11/18/827374/
865デフォルトの名無しさん (ワッチョイ 5681-bLrU [153.207.162.221])
垢版 |
2018/09/07(金) 12:56:53.96ID:wYXXQRw+0
>>863
それを作るにはサーバーサイドプログラミングの技術が必要
その技術をどの程度持ってるかで作り上げるのにかかる時間が大きく違う
それに経験やコーディングスタイル、作り方などなどでさらに制作期間が変わる

プログラミング知識なしから始めるということなら
プログラミング出来るようになるか未知数だから何とも言えん

青写真が出来てるなら企画書作って専門業者に依頼して
作ってもらうのが手っ取り早い
2018/09/07(金) 15:12:44.22ID:939inRae0
最低でも、数年は掛かる。
巨大画像掲示板なら十年

だって単純なツール・アプリじゃないだろ。
これは、データベースとか部品が組み合わさった、システムだろ

システムの運用構築だけで、Docker とか数十の技術がある。
LPIC, LinuC などの資格もある

情報処理資格も一杯ある。
資格を数個は取らないと、システム運用構築なんて無理
2018/09/07(金) 16:37:35.63ID:M/DU9wQ1M
資格の名前言ってるやつってろくにアプリも作らずに資格の勉強を作成時間にしてそう
こんなのそこらへんに転がってる大学生が半年で作ってるよ
2018/09/07(金) 16:53:04.51ID:dfq99u5c0
> こんなのそこらへんに転がってる大学生が半年で作ってるよ

それが本当なら腐るほどできてる。
2018/09/07(金) 17:17:08.68ID:+cI6iexZd
掲示板システムを実装する人と企画や運営する人は別だろう
ひろゆきとかは後者じゃないの?
本当に掲示板作りたいなら作れる人探すのが早い
2018/09/07(金) 19:37:52.65ID:lhS0BNTy0
>>868
作るのは簡単だけど人を集めるのは難しいから誰もやらない
2018/09/07(金) 19:41:06.36ID:dfq99u5c0
>>870
人集めは、そこらへんに転がってる大学生を集めればいいだけじゃなかったの?w
2018/09/07(金) 19:42:55.71ID:lhS0BNTy0
>>871
? 人が集まるというのはユーザーが集まるかということなんだが、それを身内で固めるということ?
873デフォルトの名無しさん (ワッチョイ 7303-ZYS3 [202.157.118.132])
垢版 |
2018/09/07(金) 19:45:49.38ID:K16bSxkY0
急に笑っとるけどヤバない?こいつ?
874デフォルトの名無しさん (ワッチョイ 5681-bLrU [153.207.162.221])
垢版 |
2018/09/07(金) 19:57:20.25ID:wYXXQRw+0
>>867
そこら辺に転がってる大学生は言い過ぎじゃないの
でも、必要なことが全部分かってる大学生なら半年あれば作れるだろうな

>>869
ひろゆきはPerlは使えるとどこかのスレで聞いたことある
ちゃんと実用的なコードを書けるかどうかは知らんけど

>>871
不特定多数のユーザーが集まらんと質問者の目的の
それだけで食ってくのは無理だろう
2018/09/07(金) 20:42:38.42ID:qLXcnwT0d
システム作るだけならすぐだけどパフォーマンスとかセキュリティとかちゃんとしようとすると大変
876デフォルトの名無しさん (ワッチョイ 7303-ZYS3 [202.157.118.132])
垢版 |
2018/09/07(金) 20:48:19.75ID:K16bSxkY0
たかだか掲示板で大げさすぎやわw
でもこうゆうバカ結構多いからホンマは笑えん
2018/09/07(金) 20:49:08.60ID:dfq99u5c0
そうだな。サマータイムごときで大騒ぎしていた人もいるしな

みたいな感じかね?
2018/09/08(土) 03:07:48.41ID:vkaU9apJr
AOJ の「DPL_1_I: Knapsack Problem with Limitations II」が分からん。

個数制限付きナップサック問題の
・ある品物の重さと個数制限
・ナップサック容量
が極めて大きいバージョン。

例えば解法
http://judge.u-aizu.ac.jp/onlinejudge/review.jsp?rid=2856557#1
を見ると、品物の価値の総和が i であるときの最大容量を記録した動的計画法テーブルを作った後に貪欲法で答えを出してるんだが、
前半の動的計画法は貪欲法を成功させるための処方なのか?

普通の貪欲法はナップサック問題で必ずしも最適な答えを返さないよね?
現に、貪欲法しかしないコードを提出してみたら2問ほど間違えた。
動的計画法を前処理的に用いることで貪欲法を成功させる方法って知られてるの?(それがこの解法?)

動的計画法で品物の個数を min(m[i], MAX_V) としている (できる) 理由も分からない。

他の人もほとんどこの方法で解いてるから、知られてる方法なのかと思うが調べてもヒットしない。
2018/09/08(土) 08:45:43.57ID:LzkjeqyB0
プログラミング・コンテスト・チャレンジブック、第2版、2012

2-3 動的計画法に、ナップサック問題の変形が載ってる

n は個数で、W は重さの総和。
計算量O(nWW)を、O(nW)に落とす

アルゴリズムか、プログラミング・コンテストのスレに書き込めば?
2018/09/08(土) 09:11:13.03ID:JruZZ7kZr
>>879
すみません。
アルゴリズムのスレもコンテストのスレもまともに機能していないのでここで質問させてもらいました。


>>878の問題はその本に載ってる問題のバリエーションの一つで、ナップサックの容量が極めて大きいので O(nW) では TLE です。

その本では動的計画法で品物の重さの総和が i であるときの価値の総和の最大値を記録した動的計画法テーブルを作っているのですが、
>>878で述べている「前半の動的計画法」では品物の価値の総和が i であるときの重さの総和の最小値を記録したテーブルを作り、更にその後で貪欲法を適用しています。
つまり動的計画法を貪欲法のための前処理として使っていると読めるのですが、なぜそれで上手くいくのか分かりません。
2018/09/08(土) 09:18:08.58ID:obhERXW70
>>880
だから数学勉強しろって
だから理解できないんだよ
2018/09/08(土) 09:27:33.16ID:TEnoIcVb0
個数の条件を外した緩和問題の解は元の問題の解の上界になるんで、それで
貪欲法の探索範囲を絞ることができる。正式には何と言うんだったか忘れたが。
883デフォルトの名無しさん (ワッチョイ 57e4-oqjt [180.92.25.36])
垢版 |
2018/09/08(土) 14:22:56.61ID:gx7bO50Z0
世界一の天才集団は何ですか?

NASA?Google?プリンストン高等研究所?
ハーバード大学?プリンストン大学?オックスフォード大学?ケンブリッジ大学?
2018/09/08(土) 14:26:36.79ID:1aT143tw0
ノーベル賞OBの会
2018/09/08(土) 14:27:46.01ID:t/+GvP7Y0
ノーヘル小DB(デブ)の回
886デフォルトの名無しさん (エムゾネ FFf2-ZVxV [49.106.193.21])
垢版 |
2018/09/08(土) 16:06:41.12ID:dIUul6mbF
外界と内界はどっちの方が重要ですか?真面目な質問です。
ふと疑問に思ったので質問してみました。
887デフォルトの名無しさん (ワッチョイ de4b-b4n1 [39.111.201.160])
垢版 |
2018/09/08(土) 17:25:37.65ID:8EdXckwk0
プログラムのコードと音楽の楽譜だったら書けるようになるのどっちが簡単ですか?
また読むならどっちが簡単ですか?
2018/09/08(土) 18:05:51.00ID:LzkjeqyB0
>>878-882
1. 漸化式を書く
2. DP表を描く。
dp[i][j]で、iが行・jが列で、表の後ろから埋めていく

i番目以降の品物から、重さの総和がj以下となる場合の、価値の総和の最大値

君は、1・2を書きましたか?
こういうのは数学の証明だから、難しい
2018/09/08(土) 19:00:49.38ID:LzkjeqyB0
プログラミング・コンテスト・チャレンジブック、第2版、2012
2-3 動的計画法に、ナップサック問題の変形が載ってる

重さの総和が非常に大きい場合、1 <= W <= 10**9
O(nW)ではダメなので、DP の対象を入れ替える。
価値に対する、最小の重さを計算する

dp[i+1][j] は、i番目の品物から、価値の総和がjとなる場合の、重さの総和の最小値

1. i-1 番目の品物から、価値の総和がjとなる場合
2. i-1 番目の品物から、価値の総和がj-v[i]となるように選び、i番目の品物を加える

dp[i+1][j] = min(dp[i][j], dp[i][j-v[i]] + w[i])
(w, v は、重さ・価値)
890デフォルトの名無しさん (ワッチョイ 0619-oqjt [113.197.43.164])
垢版 |
2018/09/08(土) 19:12:36.49ID:rAfU6n+f0
至高の概念は何ですか?
2018/09/08(土) 19:27:36.52ID:LzkjeqyB0
プログラミング・コンテスト・チャレンジブック、第2版、2012
2-3 動的計画法に、ナップサック問題の変形が載ってる

個数制限付き部分和

n種類の数aiが、各mi個ずつある。
これらの中から、いくつか選んで、総和をKにする

制約
1 <= n <= 100
1 <= ai, mi <= 100_000
1 <= K <= 100_000

n = 3
a = {3, 5, 8}
m = {3, 2, 2} 各個数
K = 17
答え 3*3 + 8 = 17

dp[i+1][j] は、i番目まででjを作る際に余る、最大のi番目の個数(作れない場合は、-1)

dp[i+1][j] = 以下の3通り
mi (dp[i][j] >= 0)
-1 (j < ai または、dp[i+1][j-ai] <= 0)
dp[i+1][j-ai] - 1 (それ以外)

最終的な答えは、dp[n][K] >= 0 かどうかでわかる。
この方法では、O(nK)

まあ、本を買って勉強して!
2018/09/08(土) 21:42:55.90ID:obhERXW70
>>888
いや普通に書くでしょ
というか書いてからプログラミングするわ
2018/09/08(土) 21:43:04.65ID: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の選択した数字は変えたいです

このような場合自分でプログラミングしないといけないのでしょうか?
2018/09/08(土) 21:43:38.90ID:obhERXW70
流石にDP表はいらないだろ
なんのための立式だ
2018/09/08(土) 21:45:47.52ID:JAekp0iXr
>>882
ありがとうございます。
緩和問題という言葉を初めて知りました。
なぜ貪欲法が最適になるのかはまだ理解していませんが、「緩和問題」をナップサック問題や貪欲法と組み合わせて検索すると多数ヒットするので、勉強してみます。



>>888-889,891
誰も「動的計画法が分からない」なんて言ってねぇんだよボケ。

> プログラミング・コンテスト・チャレンジブック、第2版、2012
> 2-3 動的計画法に、ナップサック問題の変形が載ってる
> 個数制限付き部分和
今の問題と関係ねぇ。「個数制限」という言葉に反応して思考停止でコピペしたのか?
コピペするばかりで何も言えてねぇし。
2018/09/08(土) 21:50:07.29ID:H8jdt89sd
>>893
そういうマイナーな計算をするのは自分で作るしかない。
配列に選べる数字を格納して、配列添え字の範囲内の乱数iを取得して、(i+1)番目の要素を取り出すという形になる。
2018/09/08(土) 21:54:13.75ID:6/Xg/XCUa
>>896
レスありがとうございます
やっぱ自分で作るしかないんですね…
二行目以降はプログラミングを全く知らない今の自分だと理解できませんが
一応ノートパソコンがあるので勉強して作ってみようと思います
ちなみにですがこの場合作れる言語?というのは決まっているのでしょうか?
2018/09/08(土) 21:56:06.98ID:H8jdt89sd
>>897
ジェネリックな計算だから、ほとんどのプログラム言語で実行できる。「(言語名) 配列 乱数」などで検索。
2018/09/08(土) 22:06:44.59ID:6/Xg/XCUa
>>898
何度もありがとうございました
付け焼き刃でどうにかなるレベルではなさそうですね
せっかく助言頂いたのにすいません
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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