1 名前:デフォルトの名無しさん mailto:sageteoff [2015/10/07(水) 20:19:06.64 ID:c4LYwtKo.net] プログラミングのお題スレです。 前スレ プログラミングのお題スレ Part7 peace.2ch.net/test/read.cgi/tech/1429195275/ 【出題と回答例】 1 名前:デフォルトの名無しさん お題:お題本文 2 名前:デフォルトの名無しさん >>1 使用言語 回答本文 【ソースコードが長くなったら】 (オンラインでコードを実行できる) ideone.com/ codepad.org/ compileonline.com/ rextester.com/runcode runnable.com/ code.hackerearth.com/ melpon.org/wandbox https://paiza.io/ 宿題は宿題スレがあるのでそちらへ。
756 名前:デフォルトの名無しさん mailto:sage [2016/09/13(火) 08:28:14.57 ID:ziymAouq.net] >>694 https://ideone.com/wVBe61 (コードではなく計算結果) 円周上の格子点、高速化頑張ったら15分でこれ位行けるようになった@PentiumG6950 https://ideone.com/lpXRWS こっちは1年前にUPしたけどスレに貼らなかった計算結果…結構長い時間かけて計算したような覚えがある。
757 名前:デフォルトの名無しさん [2016/09/13(火) 11:57:17.52 ID:EheVVWlB.net] 円周の格子点問題は、数学でもプログラムでも一発で解答できる決定版はなさげで 力業をいかに高速化するかにかかってるとおもうな。
758 名前:デフォルトの名無しさん mailto:sage [2016/09/13(火) 12:05:57.03 ID:UfB/Iygd.net] 直径nキロメートルの円があります。 手島と大嶋は時計回りに円周上を走ることになりました。 手島は秒速tセンチメートル、大嶋は分速oメートルで走ります。 0<n<100000000 0≦t≦10000000 0≦o≦10000 0<m<1000000 大嶋が円をm周した時に手島はn周出来たか出力しなさい。 ■標準入力 1行目がn、2行目がtとo、3行目がm n t o m ■標準出力 n
759 名前:デフォルトの名無しさん mailto:sage [2016/09/13(火) 12:44:49.89 ID:c6Y5aSJz.net] >>743 nが2回出てきてるんですが っていうか、答えは整数実数どっち? 後者なら有効数字はどうするの?
760 名前:デフォルトの名無しさん mailto:sage [2016/09/13(火) 12:45:20.45 ID:jvr3tDVu.net] 時計ですなー。
761 名前:デフォルトの名無しさん mailto:sage [2016/09/13(火) 13:35:13.01 ID:ziymAouq.net] >>743 Java https://ideone.com/nWux6W 直径って出力に関係ないよね…?
762 名前:デフォルトの名無しさん mailto:sage [2016/09/13(火) 23:16:40.62 ID:Hd4kFj6N.net] >>737 C ideone.com/JZTL1J >>743 C ideone.com/sIdSFq
763 名前:デフォルトの名無しさん [2016/09/14(水) 00:16:05.45 ID:U8aDu041.net] >>743 Rubyで。 input =<<END 2.5 100 200 10 END n, t, o, m = input.split.map { |e| e.to_f } p 3 * m * t >= 5 * o * n
764 名前:デフォルトの名無しさん mailto:sage [2016/09/14(水) 18:32:15.94 ID:XNPp97JV.net] 地球の半径ですら6400キロなのに 直径100000000キロまで設定している>>743 って。。。
765 名前:デフォルトの名無しさん [2016/09/14(水) 21:22:01.11 ID:lCv5R5I7.net] 宇宙人なんだろう 観測史上最大の星 L1551 IRS5 だと1e8じゃあまだまだ足りんぞ
766 名前:デフォルトの名無しさん mailto:sage [2016/09/20(火) 20:19:45.34 ID:9oYup838.net] 出題出来るオレ、カッケー とか思って調子に乗ってやったんだろ、どうせ。 今頃恥ずかしくてこのスレも見ていないだろ。 こういう奴はdat落ちして新スレに移行するか、最新50くらいの 過去ログが流れてしまった頃に 素知らぬ顔してまた書き込み出すぜ。
767 名前:デフォルトの名無しさん mailto:sage [2016/09/20(火) 20:44:49.56 ID:goOJLnhv.net] 山下雄介
768 名前:デフォルトの名無しさん [2016/09/21(水) 12:22:41.32 ID:Fil1hk+D.net] Haxe(ヘックス)はOSSで、JSに型チェックを付けたような言語で(altJS)、 JS, Flash, PHP, C++, Java, C#, Python に書き出せる。 Windows8.1対応 IDEは、FlashDevelop このサイトで、ブラウザでプログラミングして、実行できる Try Haxe ! try.haxe.org/ Haxeプログラミング入門、尾野政樹、2015
769 名前:デフォルトの名無しさん mailto:sage [2016/09/28(水) 00:14:12.32 ID:x19ZT2Us.net] お題:足がコンパスのロボット 足がコンパスのようになっており、片足を支点にして交互に回転しながら歩くようなロボットがあります。 回転半径は1メートルで固定です。その回転角度は10〜360°まで設定できるのですが、 実際に動かすと、その設定範囲内で1歩毎に常にランダムの角度で動いてしまいます。 例えば90°に設定すると、1〜90の範囲で1°間隔にてランダムな回転角度です。 スタート地点にこのロボットを置き、1000歩、歩かせた場合、 最もスタート地点から遠ざかってしまう可能性が高い設定角度は 10°、30°、45°、60°、90°、180°、270°、360°のうちどれでしょう?
770 名前:デフォルトの名無しさん mailto:sage [2016/09/28(水) 00:25:35.81 ID:va8I6tp2.net] 回転角度は10度以上360度以下の整数で 設定がn度のとき、1,2,3,...,n度で歩く確率がそれぞれ1/nってこと? 設問がよくわからない
771 名前:753 mailto:sage [2016/09/28(水) 00:27:45.52 ID:x19ZT2Us.net] >>754 訂正します。 最もスタート地点から遠ざかってしまう可能性× 最も歩く範囲面積が大きくなる可能性○
772 名前:753 mailto:sage [2016/09/28(水) 01:05:00.83 ID:x19ZT2Us.net] >>756 面積は必要なかったw 最も歩く範囲が大きくなる可能性○
773 名前:デフォルトの名無しさん mailto:sage [2016/09/28(水) 01:08:31.73 ID:va8I6tp2.net] 歩く範囲って何? そしてその範囲にどういう順序を導入すんの?
774 名前:デフォルトの名無しさん mailto:sage [2016/09/28(水) 01:31:23.36 ID:x19ZT2Us.net] >>758 どうしようかな・・・ 例えば、ロボットが大きな円盤に乗っている。ロボットを中心に置く。 1000歩歩かせた場合、一番大きな円盤を必要とする設定は概ね何度でしょう? ってのがいいかな。
775 名前:デフォルトの名無しさん mailto:sage [2016/09/28(水) 01:44:05.92 ID:vAKZVh2k.net] なんという泥縄...
776 名前:デフォルトの名無しさん mailto:sage [2016/09/28(水) 02:12:02.41 ID:E00q6b/l.net] 設定が360度の場合、1度〜360度でランダムなのか10度〜360度でランダムなのか
777 名前:デフォルトの名無しさん mailto:sage [2016/09/28(水) 02:13:21.23 ID:E00q6b/l.net] て書いてあったわすまん
778 名前:デフォルトの名無しさん mailto:sage [2016/09/28(水) 02:18:42.43 ID:E00q6b/l.net] >>754 Java https://paiza.io/projects/CDqrMJ9Uzeu_xuPBk77a3Q これで良いんかの
779 名前:デフォルトの名無しさん mailto:sage [2016/09/28(水) 02:45:02.35 ID:E00q6b/l.net] うん、>>763 バグってるねw https://paiza.io/projects/y_4Q-6RWYYRQul600Fxw7A
780 名前:753 mailto:sage [2016/09/28(水) 09:28:28.82 ID:5Q2VSD5F.net] >>764 正解!
781 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/09/28(水) 23:43:35.22 ID:fvrxpn3K.net] お題:X-Y散布図のデータが与えられると、データの特徴を出力するプログラムを作れ。
782 名前:デフォルトの名無しさん mailto:sage [2016/09/29(木) 00:41:48.24 ID:jq9v4dMk.net] 質問。出力の型はな〜に?
783 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/09/29(木) 00:56:33.41 ID:4ynE22uh.net] >>767 決まっていない。
784 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/09/29(木) 01:02:42.83 ID:4ynE22uh.net] Xが変化しないなら、「Xは定数と思われます」。 統計的特徴として、最大値、最小値、平均値など。 相関の有無など。 データの特徴を学習させるときに使えたらなと思う。
785 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/09/29(木) 01:09:09.41 ID:4ynE22uh.net] >>767 ごめんごめん、型は文字列がいいや。
786 名前:デフォルトの名無しさん mailto:sage [2016/09/29(木) 01:18:25.34 ID:5Ed1CqY4.net] プログラミングの問題じゃねーなそれ
787 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/09/29(木) 01:24:57.46 ID:4ynE22uh.net] お題:数列の規則性を分析して一般項のC言語式を推定するプログラム。
788 名前:デフォルトの名無しさん mailto:sage [2016/09/29(木) 01:26:33.81 ID:iWzko7DS.net] 変な奴きたなおい
789 名前:デフォルトの名無しさん mailto:sage [2016/09/29(木) 11:07:09.92 ID:S1ISAJ/O.net] お題: 次の文章が成り立つように( )の中に数を入れよ(10進数の算用数字の形で)。 『この文章の中に 0は( )文字、1は( )文字、2は( )文字、3は( )文字、4は( )文字、 5は( )文字、6は( )文字、7は( )文字、8は( )文字、9は( )文字、 算用数字は( )文字あります』
790 名前:デフォルトの名無しさん mailto:sage [2016/09/29(木) 11:12:05.26 ID:3fQeuqpk.net] 前にそれ見たことあるけど。問題ちょっと違うけど。
791 名前:デフォルトの名無しさん mailto:sage [2016/09/29(木) 13:26:29.91 ID:HDXVl+rI.net] >>774 複数解あるから全部列挙しろって事? Ruby 2.3.1 $><<'『この文章の中に 0は(%d)文字、1は(%d)文字、2は(%d)文字、3は(%d)文字、4は(%d)文字、 5は(%d)文字、6は(%d)文字、7は(%d)文字、8は(%d)文字、9は(%d)文字、 算用数字は( )文字あります』'%[1,7,5,1,1,2,1,2,1,1,22]
792 名前:デフォルトの名無しさん mailto:sage [2016/09/30(金) 17:18:56.68 ID:Y6l190wq.net] 数字と漢数字を相互に変換するプログラムを作成お願いします。 出来ればC#でお願いします。 例 111231243235436 <==> 百十一兆二千三百十二億四千三百二十三万五千四百三十六
793 名前:デフォルトの名無しさん [2016/09/30(金) 17:34:05.09 ID:CijhFsAG.net] じぶんでやれ
794 名前:デフォルトの名無しさん mailto:sage [2016/09/30(金) 19:16:59.63 ID:GrCnAQwz.net] おーくせんまんおーくせんまん
795 名前:デフォルトの名無しさん mailto:sage [2016/10/01(土) 15:45:59.82 ID:g8fgU4gY.net] お題と見せかけてプログラム作成依頼する奴って性格悪そう
796 名前:デフォルトの名無しさん mailto:sage [2016/10/01(土) 17:22:57.31 ID:Hi+y6PXx.net] じゃぱぁーん!
797 名前:デフォルトの名無しさん [2016/10/01(土) 23:29:57.15 ID:sU5CeuPC.net] >>777 Ruby ideone.com/fKqGcR
798 名前:デフォルトの名無しさん mailto:sage [2016/10/02(日) 10:09:53.98 ID:tpSAAMa5.net] 逆方向が難しいな
799 名前:デフォルトの名無しさん mailto:sage [2016/10/02(日) 10:28:30.05 ID:9tnsJKRL.net] そうなの? いまから取り組む予定だったけど そんなに難しいんなら止めよっと
800 名前:デフォルトの名無しさん mailto:sage [2016/10/02(日) 11:51:51.24 ID:QvMQ+uX0.net] 難しくはない 面倒くさいだけで
801 名前:デフォルトの名無しさん [2016/10/02(日) 17:21:53.04 ID:k1HK9CGy.net] >>777 Rubyで両方向。 ideone.com/vTwBZc
802 名前:デフォルトの名無しさん [2016/10/02(日) 21:03:52.42 ID:YNMJXJ08.net] お題:3×3×3のルービックキューブを最小手数で6面揃えるプログラム
803 名前:デフォルトの名無しさん [2016/10/02(日) 21:10:43.76 ID:w8w2bVqI.net] すいません>>787 は自己解決しました
804 名前:デフォルトの名無しさん mailto:sage [2016/10/02(日) 21:17:54.22 ID:YgSevYt1.net] 自己解決ってなんだ
805 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 02:19:06.57 ID:afA6oe1A.net] >>777 ruby 2.0.0 ideone.com/uwKDDc ・マイナスを▲で表現するアイデアは>>786 さんから無断で拝借しました ・テスト部分のコードも>>786 さんから無断で拝借しました
806 名前:デフォルトの名無しさん [2016/10/03(月) 07:04:42.97 ID:g0wnVkPc.net] >>790 サンクス
807 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 15:18:20.56 ID:wy4v0QcT.net] >>787-789 ワラタw
808 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 21:25:42.73 ID:lIBXU/7G.net] 数独ソルバーで任天堂問題解こうと思ったら、2000万年かかるようになった。Orz 総当たりだとキツイなぁ。数独は。平均サジェスト数が2個の81乗。死ぬわ。
809 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 21:29:48.53 ID:lIBXU/7G.net] cp1.nintendo.co.jp/ruby.html ここから入門。
810 名前:デフォルトの名無しさん [2016/10/03(月) 21:33:29.69 ID:RKI08UEe.net] 任天堂問題とは?
811 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 21:40:47.39 ID:lIBXU/7G.net] >>795 俺が作った造語。すまんな。 >>794 のページから問題解いてくとアルヨ。
812 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 21:59:25.51 ID:hxqof8pD.net] Rubyの自作ヘボ数独ソルバーですらコンマ以下で解けたぞ
813 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 22:19:26.57 ID:lIBXU/7G.net] >>797 俺あんまりロジック解くの得意じゃないからねぇ。 C++でかいたけど、総当たりは筋が悪いことはわかったよ。
814 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 22:24:43.42 ID:aKvG7AoT.net] 総当たりから不要なパターンを省いていくのも一つの手だと思う
815 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 22:25:59.85 ID:hxqof8pD.net] >>797 基本ルール:ある数字と同じ列(or行or3*3の正方形)にはその数字が入らない これだけでも実装して後は背理法でやればすぐ解けると思うぞ 解の一意性がどうかとか細かいこともあるけどこの問題は一意的に求まるから関係ないし
816 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 22:27:06.95 ID:lIBXU/7G.net] ideone.com/afSrEW ここからどうしたらいいと思う? i7-6700でも2000万年かかる。
817 名前:デフォルトの名無しさん mailto:sage [2016/10/04(火) 01:44:53.95 ID:a8C2punc.net] >>793-794 昔書いたソースコードを流用した ideone.com/ibTP88
818 名前:デフォルトの名無しさん mailto:sage [2016/10/04(火) 01:58:03.23 ID:FAQ7jfY8.net] >>802 グレート! すごいな、イデオン時間で解けるもんなんだなぁ。うーん。俺は修業が足りんな。 俺も結構書いたかと思ったけど全然うわてだ。 ロジック解くときはやっぱこれくらい書かないとダメかー。 ひぎぃ、頭がフットーしちゃうよぉ〜。
819 名前:デフォルトの名無しさん mailto:sage [2016/10/04(火) 02:23:25.94 ID:a8C2punc.net] >>803 数独は有名な解き方がいくつかあるので、それを知らないと難しいかも いくつもある解き方を実装するのは面倒なのでバックトラック法でやるのがいいと思う
820 名前:デフォルトの名無しさん mailto:sage [2016/10/04(火) 02:52:38.24 ID:FAQ7jfY8.net] >>804 情報ありがとう。いいものが見れた。
821 名前:デフォルトの名無しさん mailto:sage [2016/10/04(火) 19:40:37.29 ID:wFGKqamD.net] お題:任天堂の倒し方をプログラムせよ。
822 名前:デフォルトの名無しさん mailto:sage [2016/10/04(火) 21:58:16.07 ID:ZRyYrZJK.net] 大作だなあ…
823 名前:デフォルトの名無しさん mailto:sage [2016/10/04(火) 23:47:40.64 ID:YN9fMNzy.net] 「方法をブログラムせよ」ってのが謎なんですが
824 名前:デフォルトの名無しさん mailto:sage [2016/10/04(火) 23:50:15.04 ID:FAQ7jfY8.net] 日本語で。 株を買います。株主総会でゴネマス。倒せます。
825 名前:デフォルトの名無しさん [2016/10/05(水) 00:49:13.06 ID:JfbCSBrf.net] >>806 プログラムしたよ。
826 名前:デフォルトの名無しさん mailto:sage [2016/10/05(水) 19:29:14.00 ID:Bgv24eMU.net] 任天堂の倒し方を知っていると 言っていた面接官は
827 名前:デフォルトの名無しさん [2016/10/05(水) 19:35:13.81 ID:ljdAnrxD.net] お題:激問
828 名前:デフォルトの名無しさん mailto:sage [2016/10/05(水) 21:44:58.11 ID:d6ezgCbb.net] >>793 ideone.com/cILqPg C++。 やっと解けたよー。ほとんどデバッグも整形もしてないけど、答えはあってるかも。 2000万年が0秒になった。頭タコすぎて泣けるわ。 頭がフットーする。 >>802 に感謝。
829 名前:デフォルトの名無しさん mailto:sage [2016/10/05(水) 21:45:50.48 ID:iBWfgtGO.net] print "任天堂の倒し方"
830 名前:デフォルトの名無しさん mailto:sage [2016/10/05(水) 21:56:56.37 ID:NHEuemUY.net] ヒントページ見れば苦労せずに誰でも書けそうなもんだが
831 名前:デフォルトの名無しさん mailto:sage [2016/10/05(水) 22:05:52.60 ID:d6ezgCbb.net] >>815 ルビー読めません。Orz
832 名前:デフォルトの名無しさん mailto:sage [2016/10/06(木) 17:02:16.03 ID:VkVdfdR0.net] スタックを操作するプログラムまたそれを表示するプログラムをお願いします
833 名前:デフォルトの名無しさん mailto:sage [2016/10/06(木) 17:48:54.19 ID:Gk0vxqlO.net] 狩野英孝のものまねで「スタックー」って叫べばOK
834 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/10/06(木) 18:13:10.02 ID:KbZqo+3y.net] >>817 自動変数のアドレスはスタックへのポインターになる
835 名前:デフォルトの名無しさん mailto:sage [2016/10/06(木) 19:29:47.14 ID:LwTuJfQY.net] スタックを操作するプログラムってこんなんでいいのかな? #include <malloc.h> #include <stdio.h> #include <string.h> unsigned char data[6] = {0x68,0,0,0,0,0xc3}; unsigned int func() { unsigned int *p; p = malloc(1024); memcpy(p,data,6); *((unsigned int*)&data[1]) = *((unsigned int*)((unsigned int*)(&p) + sizeof(unsigned int*))); *((unsigned int*)((unsigned int*)(&p) + sizeof(unsigned int*))) = (unsigned int)p; printf("0x%X\n",*((unsigned int*)((unsigned int*)(&p) + sizeof(unsigned int*)))); return *((unsigned int*)&data[1]); } int main(void) { printf("0x%X\n",func()); return 0; }
836 名前:デフォルトの名無しさん mailto:sage [2016/10/06(木) 19:48:03.50 ID:LwTuJfQY.net] >>820 すまん、これ間違ってますねぇ・・・ スタックの操作って環境依存な気がするけどどうなんでしょう
837 名前:デフォルトの名無しさん mailto:sage [2016/10/06(木) 20:04:22.70 ID:SdPd3klr.net] え?データ構造の練習の話じゃなくてプログラムの一時領域の話? ちなみにここは宿題スレじゃない。
838 名前:デフォルトの名無しさん mailto:sage [2016/10/06(木) 21:15:35.91 ID:dAHZcQmf.net] スマホで入力した数字を出力しなさい Sは0から9までの数字とcと+と-からなる文字列 0<S<1001 Sの先頭は数字から始まる Sの最後に+と-がこない cは入力済みの数字をクリアする +は左辺に1を足し、-は右辺に1を引く Sに数字が含まれていなかったり、cと+と-が先頭や最後に出てきたり2文字以上続いたらERRORと出力すること ■stdin 5+1-32c8 ■stdout 8 ■stdin 32+8 ■stdout 338 ■stdin +24c25 ■stdout ERROR
839 名前:修正 mailto:sage [2016/10/06(木) 21:16:30.92 ID:dAHZcQmf.net] スマホで入力した数字を出力しなさい Sは0から9までの数字とcと+と-からなる文字列 0<S<1001 Sの最後に+と-がこない cは入力済みの数字をクリアする +は左辺に1を足し、-は右辺に1を引く Sに数字が含まれていなかったり、cと+と-が先頭や最後に出てきたり2文字以上続いたらERRORと出力すること ■stdin 5+1-32c8 ■stdout 8 ■stdin 32+8 ■stdout 338 ■stdin +24c25 ■stdout ERROR
840 名前:修正 mailto:sage [2016/10/06(木) 21:17:13.95 ID:dAHZcQmf.net] Sの最後に+と-がこない ↑この1文も削除
841 名前:修正 mailto:sage [2016/10/06(木) 21:18:37.24 ID:dAHZcQmf.net] 119+5 なら1205
842 名前:デフォルトの名無しさん mailto:sage [2016/10/06(木) 21:55:36.99 ID:hrJ3iBy7.net] この+,-ってスマホの入力とどういう関係があるの?
843 名前:デフォルトの名無しさん mailto:sage [2016/10/06(木) 21:59:09.52 ID:HEfd0Rj6.net] また山下雄介か
844 名前:デフォルトの名無しさん mailto:sage [2016/10/07(金) 10:59:44.51 ID:1a/aMfXp.net] >>824 ruby if gets.chomp!.split(/[c+-]/, -1).include?('') puts:ERROR else str = $_.include?(?c)? $_[/c\K[^c]*$/] : $_ ary = str.split(/\b/) ary.each_with_index{|s, i| case s when /^\d+$/ then next when ?+ then ary[i - 1].succ! when ?- then ary[i + 1] = (ary[i + 1].to_i - 1).to_s end ary.delete_at(i) } puts ary*'' end
845 名前:828 mailto:sage [2016/10/07(金) 11:10:04.11 ID:1a/aMfXp.net] ミス if gets.chomp!.split(/[c+-]/, -1).include?('') puts:ERROR else str = $_.include?(?c)? $_[/c\K[^c]*$/] : $_ ary = str.split(/\b/) ary.each_with_index{|s, i| case s when /^\d+$/ then next when ?+ then ary[i - 1].succ! when ?- then ary[i + 1] = (ary[i + 1].to_i - 1).to_s end ary[i] = nil } puts ary.compact*'' end
846 名前:828 mailto:sage [2016/10/07(金) 11:21:01.09 ID:1a/aMfXp.net] ミス 連投すまんこれで最後にするわ if gets.chomp!.split(/[c+-]/, -1).include?('') puts:ERROR else str = $_.include?(?c)? $_[/c\K[^c]*$/] : $_ ary = str.split(/\b/) ary.each_with_index{|s, i| case s when /^-?\d+$/ then next when ?+ then ary[i - 1] = (ary[i - 1].to_i + 1).to_s when ?- then ary[i + 1] = (ary[i + 1].to_i - 1).to_s end ary[i] = nil } puts ary*'' end
847 名前:デフォルトの名無しさん [2016/10/08(土) 08:08:57.97 ID:vxldEz4C.net] >>824 830を参考にしました。 Ruby ideone.com/AizppP
848 名前:デフォルトの名無しさん mailto:sage [2016/10/09(日) 01:39:18.78 ID:okPyT/Vt.net] 1行で gets.chomp!.split(/[c+-]/,-1)&['']!=[]?$><<:ERROR:(~/c/?$_[/c\K[^c]*$/]:$_).split(/\b/).tap{|a|$><<a.each_with_index{|s,i|s.to_s[/\d/]?next: a[i-e=44-s.ord]=a[i-e].to_i+e;a[i]=p}*''}
849 名前:デフォルトの名無しさん mailto:sage [2016/10/09(日) 03:00:29.48 ID:BybICDK4.net] やっぱRubyって・・・いや、なんでもない
850 名前:デフォルトの名無しさん mailto:sage [2016/10/09(日) 21:58:35.59 ID:2oHV2A6O.net] >>823-826 ・「右辺に1を引く」の右辺をマイナスのすぐ右側の数と解釈 def f8823(s) # Sに数字が含まれていなかったり、 # cと+と-が先頭や最後に出てきたり2文字以上続いたらERRORと出力すること return 'ERROR' if /\d+/ !~ s || /(^[c+-]|[c+-]$|[c+-]{2,})/ =~ s # cは入力済みの数字をクリアする # +は左辺に1を足し、-は右辺に1を引く s.gsub(/.+c/, '').gsub(/(\d+)\+/) {$1.next}.gsub(/-(\d+)/) {($1.to_i - 1).to_s} end p %W(#{} c + - 1c 1+ 1- c1 c+ c- 1cc1 1++1 1--1 1c+-1 119+5 119-5 119c5 1+1-1 1+1+1 1-1-1).map {|s| [s, f8823(s)]} ↓ $ ruby 8823.rb [["", "ERROR"], ["c", "ERROR"], ["+", "ERROR"], ["-", "ERROR"], ["1c", "ERROR"], ["1+", "ERROR"], ["1-", "ERROR"], ["c1", "ERROR"], ["c+", "ERROR"], ["c-", "ERR OR"], ["1cc1", "ERROR"], ["1++1", "ERROR"], ["1--1", "ERROR"], ["1c+-1", "ERROR" ], ["119+5", "1205"], ["119-5", "1194"], ["119c5", "5"], ["1+1-1", "210"], ["1+1 +1", "221"], ["1-1-1", "100"]]
851 名前:834 mailto:sage [2016/10/09(日) 22:19:57.08 ID:k3CHV3QP.net] >>835 は完全に間違っているので取り下げます 1-1+1 が 120 になっちゃうねこれじゃあ
852 名前:デフォルトの名無しさん [2016/10/09(日) 23:19:57.10 ID:0NJ6apgZ.net] >>836 ideone.com/Qb37qE で実行してみたが、 1-1+1 は、ERRORじゃね?
853 名前:デフォルトの名無しさん mailto:sage [2016/10/10(月) 08:00:29.16 ID:HHuVI6c/.net] お題: A B C … Z 1 2 3 26 とするとき、 KNOWLEDGE -> 11 + 14 + 15 + 23 + 12 + 5 + 4 + 7 + 5 = 96 HARDWORK -> 8 + 1 + 18 + 4 + 23 + 15 + 18 + 11 = 98 ATTITUDE -> 1 + 20 + 20 + 9 + 20 + 21 + 4 + 5 = 100 となる。 総和が100となる他の単語を3つ見つけよ。
854 名前:デフォルトの名無しさん mailto:sage [2016/10/10(月) 08:20:11.21 ID:jxPg9rAk.net] 辞書ファイルくださいw
855 名前:デフォルトの名無しさん mailto:sage [2016/10/10(月) 08:52:21.18 ID:HHuVI6c/.net] >>839 っdetail.chiebukuro.yahoo.co.jp/qa/question_detail/q1412673334
856 名前:デフォルトの名無しさん mailto:sage [2016/10/10(月) 09:34:42.77 ID:jxPg9rAk.net] >>838 Java https://paiza.io/projects/vpDhY14oTq6f2YXv4a5wIA