■ このスレッドは過去ログ倉庫に格納されています
プログラミングのお題スレ Part6
- 1 :デフォルトの名無しさん:2014/12/11(木) 15:17:14.07 ID:Ipp+K308.net
- プログラミングのお題スレです。
前スレ
プログラミングのお題スレ Part5
http://peace.2ch.net/test/read.cgi/tech/1411227287/
【出題と回答例】
1 名前:デフォルトの名無しさん
お題:お題本文
2 名前:デフォルトの名無しさん
>>1 使用言語
回答本文
【ソースコードが長くなったら】 (オンラインでコードを実行できる)
http://ideone.com/
http://codepad.org/
http://compileonline.com/
http://rextester.com/runcode
http://runnable.com/
http://code.hackerearth.com/
http://melpon.org/wandbox
https://paiza.io/
宿題は宿題スレがあるのでそちらへ。
- 946 :デフォルトの名無しさん:2015/04/12(日) 11:59:46.64 ID:5IvJvm44.net
- 問題ぐらい読もうよ
- 947 :デフォルトの名無しさん:2015/04/12(日) 12:28:03.52 ID:5oPlUArh.net
- 問題はビリヤードの玉を使うとあるが。
幾つまで数字があるか、一セットしか使えないとは書いてない。
玉が7個や8個や21個あるビリヤードもあるかもしれない。
何セットでも使用可なら1のみ選ぶのもある。
- 948 :デフォルトの名無しさん:2015/04/12(日) 14:08:51.74 ID:Kyho4V/V.net
- 両方やればいいじゃない
- 949 :デフォルトの名無しさん:2015/04/12(日) 15:51:21.40 ID:5IvJvm44.net
- >>947
やっぱり日本語が読めないのか
何セットでも使っていいが、それだと解の条件を満たさないでしょ
- 950 :デフォルトの名無しさん:2015/04/12(日) 17:56:42.16 ID:Vi6a17uJ.net
- >>856 J
smoutput u: _12 + a. i. 'Tqxx{,c{~xp'
Hello World
- 951 :デフォルトの名無しさん:2015/04/12(日) 18:28:22.89 ID:tR9Eg8dR.net
- 一所懸命に、回答例まで作ってみた >>575 に回答はつかないのね‥泣
- 952 :デフォルトの名無しさん:2015/04/12(日) 20:12:25.21 ID:4fkLnYAO.net
- キルヒホッフの法則?
- 953 :デフォルトの名無しさん:2015/04/12(日) 22:03:28.87 ID:Nj+dqsUa.net
- >>951 Ruby
http://ideone.com/1ZXHUe
- 954 :デフォルトの名無しさん:2015/04/13(月) 03:25:44.46 ID:aCGk6LVm.net
- >>893
お題が数学パズルっぽいので一般解があるのかもしれないと
しばらく考えてたけど降参><
力ずくで C++
http://ideone.com/hA1mFM
7個のとき解なし
合っているか自信ないけど以下:
8個で解96(鏡像回転除いて6)
9個で解72(鏡像回転除いて4)
10個は・・・計算に数時間かかりそう
- 955 :デフォルトの名無しさん:2015/04/13(月) 05:20:48.59 ID:kgFkwbxk.net
- コンビネーション自作とか猛者だな。いいなー。才能クレ。
- 956 :デフォルトの名無しさん:2015/04/13(月) 12:28:50.22 ID:O30lCFiy.net
- お題:1に3,5,7をそれぞれ0回以上掛けてできる数を小さいものから100個もとめる
- 957 :デフォルトの名無しさん:2015/04/13(月) 12:47:22.04 ID:aN+rsjOQ.net
- 3 < 5 < 7 < 3^2
だから簡単そうだなw
- 958 :デフォルトの名無しさん:2015/04/13(月) 13:44:31.76 ID:/Aa3hGZM.net
- >>956 Haskell
これでええんか?
http://ideone.com/7oBoFa
- 959 :デフォルトの名無しさん:2015/04/13(月) 14:08:57.97 ID:V7jnRRgk.net
- >>956 Java
http://ideone.com/JR3YQB
>>958 こうじゃないかな?
- 960 :デフォルトの名無しさん:2015/04/13(月) 14:27:48.20 ID:/Aa3hGZM.net
- >>959
そういうことだろうとは思っていたが
こう書けばわかってもらえるだろうというやっつけな出題が嫌いだ
- 961 :デフォルトの名無しさん:2015/04/13(月) 14:38:20.40 ID:V7jnRRgk.net
- >>956 Java
http://ideone.com/dGoBER
出力をちょっと解りやすくした
- 962 :デフォルトの名無しさん:2015/04/13(月) 19:25:23.90 ID:e1V4T9fq.net
- >>956
bc
(3 * 5 * 7) ^ n % n とやりたかったのだけどタイムアウトしてしまうのでちょっとインチキ
http://ideone.com/0bwAQe
- 963 :デフォルトの名無しさん:2015/04/14(火) 03:57:13.20 ID:JKwd4u3i.net
- >>956
>>962 さんの方法を使って剰余で使う数を
少しずつ拡張するようにしてみた
C
http://ideone.com/93iWtW
- 964 :デフォルトの名無しさん:2015/04/14(火) 04:01:15.48 ID:JKwd4u3i.net
- お題: 金額はいくら?
箱に日本の硬貨が1枚以上入っています
中身は外からは見えませんが、硬貨のみの正確な重量は箱の重量がわかっている
ので知ることができます
硬貨の重量から箱の中の硬貨の総額を、取り得る値全て求めてください
各硬貨の1枚の重量は以下の通りです(実際の重量と同じです)
1円玉: 1.0g
5円玉: 3.7g
10円玉: 4.5g
50円玉: 4.0g
100円玉: 4.8g
500円玉: 7.0g
例:8.0gの場合 「8円(1円x8)、54円(50円+1円x4)、100円(50円x2)、501円(500円+1円)」
金額と同時に各コインの内訳も表示(オプション)
とりあえずサンプルとして 23.7g になる金額を求めてみてください
解答例(C言語 見づらいですが><):
http://ideone.com/g5rNf2
- 965 :デフォルトの名無しさん:2015/04/14(火) 05:31:50.99 ID:8K9J72Mn.net
- >>964 Java
http://ideone.com/v0OU66
結果が違うw
- 966 :デフォルトの名無しさん:2015/04/14(火) 06:13:02.26 ID:JKwd4u3i.net
- >>965
ほんとだ どこか間違ってたみたい
というわけで、正しい答えは >>965 さんのを参考にしてください
自分は出直してきますw
- 967 :デフォルトの名無しさん:2015/04/14(火) 07:45:02.78 ID:JKwd4u3i.net
- >>966
以下は>>964の解答例のループ途中のdouble型の数値を書きだしたもの
a1 = 3.700000, a2 = 3.700000 // 値
a1 = 98 99 99 99 99 99 0d 40 // double 8バイトのメモリイメージ
a2 = 9a 99 99 99 99 99 0d 40 // double 8バイトのメモリイメージ
リトルエンディアンなので最初のバイトが最下位ビットになるのですが、
このちょっとの誤差でうまくいかなかったのでした
double型の比較問題の好例みたいな解答例になってしまった
値を丸めても良いのですが、重量を10倍して整数で扱う形に書き直しました
http://ideone.com/vE7UPP
>>965と同じになって安心
- 968 :デフォルトの名無しさん:2015/04/14(火) 07:50:41.58 ID:1aqhfbLs.net
- ああJavaは浮動小数点演算を厳密にやるから(つまり遅い)そこで差が出たんだな
- 969 :デフォルトの名無しさん:2015/04/14(火) 08:29:45.21 ID:8K9J72Mn.net
- http://ideone.com/Tzsj8S
インタープリターで動いてる1回目は遅い
2回目以降はまあまあ早い
static boolean epsilonEquals(double a, double b, double epsilon)
{
return Math.abs(a - b) <= epsilon;
}
こんな感じでdouble同士の比較は幅持たせてる
そのまま==で比較したら23.7だと結果21個だわ
- 970 :デフォルトの名無しさん:2015/04/14(火) 14:13:43.75 ID:/iQm+CFv.net
- >>964
なんとか綺麗に書けないか考えてみたがこういうのどうやっても泥臭いコードになっちゃうなw
- 971 :デフォルトの名無しさん:2015/04/14(火) 14:42:20.19 ID:I9ozslwe.net
- >>964 Haskell
http://ideone.com/6eAtB2
出力フォーマットは合わせてない
- 972 :デフォルトの名無しさん:2015/04/14(火) 16:21:37.62 ID:lELr+SZG.net
- ほら、これでも解いとけ
https://paiza.jp/poh/enshura-special
- 973 :デフォルトの名無しさん:2015/04/14(火) 16:34:59.75 ID:5erMhlO7.net
- >>972
非常に有名な問題でついに手抜きか?
なんの独自性もないだろ?
- 974 :デフォルトの名無しさん:2015/04/14(火) 17:54:46.45 ID:JdejwVu9.net
- いつのまに国際化したし
- 975 :デフォルトの名無しさん:2015/04/14(火) 19:15:05.79 ID:8K9J72Mn.net
- >>964 Java
http://ideone.com/p9TGWl
無駄に高速化したら酷いコードにw
- 976 :デフォルトの名無しさん:2015/04/14(火) 19:56:25.33 ID:5erMhlO7.net
- >>972は速度ではなく最短手順を競うところに新規性があるのか。
ルービックキューブの速どきは速度を競うが、無駄な動作が無い方が速いわけで、最短解法を追求してるとも言える。
それと同じようなことをプログラムでやると。
- 977 :デフォルトの名無しさん:2015/04/14(火) 20:17:07.43 ID:j0yztYMW.net
- もはや2次絵に何の反応もないとか
- 978 :デフォルトの名無しさん:2015/04/14(火) 20:52:34.57 ID:sl3GRVWt.net
- >>972
大分前に問題作成コードのお題がこのスレに出てたような。
解くのは無理だなぁ。
- 979 :デフォルトの名無しさん:2015/04/14(火) 20:54:52.66 ID:sl3GRVWt.net
- >>89か
- 980 :デフォルトの名無しさん:2015/04/15(水) 15:54:39.56 ID:bGMPFrzy.net
- >>964
ttp://ideone.com/JeUEIU
C++。>>969の関数パクらせてもらった。
この前のビリヤード計算と同じ要領で組んだ。
浮動小数演算はやっぱあんまり好きじゃないな。
はよ十進化少数入らんかな。
- 981 :デフォルトの名無しさん:2015/04/15(水) 21:04:21.47 ID:pT7gC8kj.net
- >>964
Python3で。
ttps://paiza.io/projects/sAc2clQwAQMEf9jWroBcXg
- 982 :デフォルトの名無しさん:2015/04/16(木) 02:08:17.97 ID:Q9DdJM30.net
- >>964
C#
http://ideone.com/gfMQ0l
IDEONEだとタイムアウトで全部答えを出さないうちに終了するな...
- 983 :デフォルトの名無しさん:2015/04/16(木) 05:27:44.10 ID:axBf0iFy.net
- そろそろ次スレの季節ですかね・・・。
- 984 :デフォルトの名無しさん:2015/04/16(木) 09:26:51.82 ID:jLDb4Tyi.net
- >>975
速いですね
ソート無しの探索部分だけで倍時間かかってたわ
200.0g -> 412ms
http://ideone.com/tA1zvD
- 985 :デフォルトの名無しさん:2015/04/16(木) 11:51:43.54 ID:PkMvowGQ.net
- 1から7までの部屋がある
各部屋のつながりはこのようになっている
1-2
1-3
1-4
2-5
3-5
4-5
2-6
3-6
4-6
5-7
6-7
1から7までの最短経路を全て出力しなさい
- 986 :デフォルトの名無しさん:2015/04/16(木) 23:42:32.35 ID:XyyhtFlt.net
- >>983
プログラミングのお題スレ Part7
http://peace.2ch.net/test/read.cgi/tech/1429195275/
mail:sageteoff しわすれた
- 987 :デフォルトの名無しさん:2015/04/17(金) 12:46:06.42 ID:3AKzHyjc.net
- >>985 C
http://ideone.com/rFYGRr な・・長い!
>>986 乙
- 988 :デフォルトの名無しさん:2015/04/17(金) 13:36:57.69 ID:T4tyuJgr.net
- レナとミナミの国際プログラミング選手権|paizaオンラインハッカソン5+
盤面を完成させた平均手数のランキングです。
1位 uwi 40.4 回 1.7 秒 Java
2位 orisano 41.6 回 0.85 秒 C++
3位 holydc 43.2 回 0.03 秒 C++
4位 y_mazun 43.2 回 0.75 秒 C++
5位 siman 50.0 回 0.63 秒 C++
https://paiza.jp/poh/enshura-special
- 989 :デフォルトの名無しさん:2015/04/17(金) 20:43:22.34 ID:5nKDLfaK.net
- >>964
>>982改良
http://ideone.com/Y6ygrm
このスレ学生が多いのかC#少ないな。
っていうか、俺もへっぽこプログラマだけどこのぐらい「読める」コードを書いて欲しい。
- 990 :デフォルトの名無しさん:2015/04/17(金) 20:52:05.48 ID:AdcsK90A.net
- |=番兵|_
( ・ω・) < オツカレサマナノン
〇={=}〇
|::::::::::\
、、、し 、、、(((.@)fri sat sun vv..
- 991 :デフォルトの名無しさん:2015/04/17(金) 21:10:46.89 ID:5axG3xuM.net
- C系言語のコードはどれも読みにくく感じるが、俺がいいと思ったのは>>967
- 992 :デフォルトの名無しさん:2015/04/17(金) 23:05:18.52 ID:3AKzHyjc.net
- >>985 C++
http://ideone.com/plSjsF
>>987をC++に書き直してみたけどぜんぜん短くならなかった・・・
このスレのHaskellの簡潔なソースにひかれて勉強し始めたけど
なかなか思うようには作れないね エラーメッセージもちょっと難解
- 993 :デフォルトの名無しさん:2015/04/17(金) 23:57:48.49 ID:QyW2mAP8.net
- >>989
それじゃ、出力結果を合計金額でソートもできるようにしておいて。
- 994 :デフォルトの名無しさん:2015/04/18(土) 00:10:44.74 ID:XxMX+y8Q.net
- >>993
何がそれじゃかわからんけど、19行目を
foreach (var c in combinations.OrderBy(x => x.Value))
に変えるだけ。
- 995 :デフォルトの名無しさん:2015/04/18(土) 08:07:22.72 ID:mvDinqtT.net
- リーダビリティは強制しなくてもいいじゃない
それは短いコードの対極で、どちらも良いものだと思うけど
総レス数 995
255 KB
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★