プログラミングのお題スレ Part14

レス数が900を超えています。1000を超えると表示できなくなるよ。
2019/05/18(土) 17:33:29.45ID:BWmpW4IF
プログラミングのお題スレです。

【出題と回答例】
1 名前:デフォルトの名無しさん
  お題:お題本文

2 名前:デフォルトの名無しさん
  >>1 使用言語
  回答本文
  結果がある場合はそれも

【ソースコードが長くなったら】 (オンラインでコードを実行できる)
https://ideone.com/
http://codepad.org/
http://compileonline.com/
http://rextester.com/runcode
https://runnable.com/
https://code.hackerearth.com/
http://melpon.org/wandbox
https://paiza.io/

宿題は宿題スレがあるのでそちらへ。

※前スレ
https://mevius.5ch.net/test/read.cgi/tech/1549160513/
822デフォルトの名無しさん
垢版 |
2019/07/17(水) 18:49:01.14ID:rBzTe21k
>>807 R
cat(11^(0:4),sep="\n")
2019/07/17(水) 19:12:50.17ID:O6R1hJD8
>>807 Pharo Smalltalk

(11 ** (0 to: 4)) rounded asStringWithCr

"=> '1
11
121
1331
14641' "
2019/07/17(水) 21:08:34.80ID:zgAvRboO
お題:y=(1-x)(1+x)のx=-1〜1の区間を数値積分せよ。
2019/07/17(水) 21:47:30.35ID:zgAvRboO
ε=0.01くらいの台形公式でいいや。
2019/07/17(水) 21:48:18.54ID:RL7WDafS
>>824
Integrate[(1-x)(1+x), {x, -1, 1}]
4/3

wolframcloud
ちょっと感動
2019/07/17(水) 22:23:45.10ID:FVhP9md/
>>824 Ruby

require 'polynomial'
require 'polynomial/calculus'

expr = Polynomial.new(1, -1) * Polynomial(1, 1)
puts expr.integrate(-1..1)
# => (4/3)
2019/07/17(水) 23:18:48.71ID:FVhP9md/
typo

> expr = Polynomial.new(1, -1) * Polynomial.new(1, 1)
2019/07/17(水) 23:37:40.20ID:t/SxdWuN
>>824 Squeak Smalltalk

(#(1 -1) collect: [:x | {0. 1. 0. -1/3} polynomialEval: x]) reduce: #-

"=> (4/3) "
2019/07/18(木) 00:59:06.64ID:A0LALR8k
>>829
small talkは何でもあんのな
毎回驚かされるわ ありがとな
2019/07/18(木) 01:42:36.36ID:4Fot9DWw
>>824 >>825 Perl5

#(x-1)(x+1)⇒1-x^2
#∫(1-x^2)⇒x-(x^3/3)
# [x-(x^3/3)] {-1, 1} ⇒ -1-(-1/3) + 1-(1/3)
# ⇒1 -1/3 - (-1+1/3) ⇒ 2 - 2/3 ⇒ 4/3
# 暗算でも定積分値を求めることはできるが、代わりに
# 幅0.01の台形法による数値計算で解を計算すると…
use List::Util sum;
$s = sum map{.01*(1-($_/100)**2)} -99..99;
print "$s\n";


実行結果
$ perl 14_824.pl
1.3333
2019/07/18(木) 07:25:42.17ID:r8faaY2+
>>830
せっかく驚いてくれているのに水を差すようで恐縮なのだけど
誤解があるといけないので念のため補足しておきますと
これは>>826-828みたいに数式処理をしているわけではなく
定積分の筆算を式にしただけ(つまり 1-x^2 の積分である
x-(1/3)x^3 に 1 を代入したときの値から -1 を代入した値を引いただけ)です

もとより #(a b c d) polynomialEval: x "=> a*x^0 + b*x^1 + c*x^2 + ..." みたいな機能が
組み込みで用意されている点では、
こういうとき式を書かずに済んで便利ではありますが^^;
2019/07/18(木) 12:47:19.12ID:OgRfjymX
お題: マルバツゲームを作れ。

_1_2_3
1O|_|_
_ー+ー+ー
2_|X|_
_ー+ー+ー
3_|_|_
2019/07/18(木) 12:58:43.13ID:OgRfjymX
(出力例)
プレーヤー1が先攻です。
プレーヤー1は何番に置きますか? 1
プレーヤー2は何番に置きますか? 5
...
プレーヤー2の勝ち。

O|2|3
ー+ー+ー
4|X|6
ー+ー+ー
7|8|9
2019/07/18(木) 22:59:22.13ID:e7HmHit7
マルバツゲームに便乗して…

お題:
3×3のマルバツゲームで両者がランダムな手を打つとき
先手の勝率、後手の勝率をそれぞれ求めよ。
836デフォルトの名無しさん
垢版 |
2019/07/18(木) 23:07:20.49ID:xdHI+pcE
今、こういうお題を考えています

Ruby などの遅い言語でも解けるように、
盤面の大きさを、9*9 〜 13*13 ぐらいで考えていますが、どうでしょうか?

1. 開始点S(座標、0行0列)から終了点E までの、最小コストを求める。
2. S, E 双方から、E, S へ目指す場合に、最小コストで出会う座標と、その時のコストを求める

1ターンで、縦横1つ隣へ移動できる。
同じマスは、1回しか通らない。
数字が各マスへの移動コストで、_ は、単なる目印で無関係です

S2953_9413
71546_7988
83411_2946
23716_5426
47385_736E
2019/07/19(金) 00:02:13.17ID:52u6jutr
問題側が手加減してあげないと解けないポンコツ言語なんて放っとけば?
838836
垢版 |
2019/07/19(金) 00:20:37.85ID:hngv4enD
>>836
ルールを修正

1. 開始点S(座標、0行0列)から終了点E までの、最小コストを求める。
2. S, E 双方から、双方が出会うように移動する時、最小コストで出会う座標と、その時のコストを求める。
この時の最小コストは、双方のコストを足したものです

1ターンで、縦横1つ隣のマスへ、必ず移動する。
自分が通ったマスは、1回しか通らないが、相手が通ったマスは、通れます

数字が各マスへの移動コストで、_ は、単なる目印で無関係です

この2は、かなり難しいのかな?
最小コストが求まるのかな?
漏れにも、わからない
2019/07/19(金) 00:31:00.88ID:uE+iP71G
>>838
迷惑だからちゃんと整理して解ける問題か確認してから書き込め。説明も下手すぎるからちゃんと推敲しろ。
2019/07/19(金) 00:57:57.34ID:KQ8wFSu5
だから自分で一度書いて動くのを確認してから出題しろと何度言えば…
2019/07/19(金) 02:15:25.70ID:ApXEphk2
>>834
common lisp
https://pastebin.com/TjpFVgBk

> (OX-game)
123/456/789 to write OX
|789|
|456|
|123|

| |
| |
| |
player-1 writing O to ...
1
| |
| |
|O |
player-2 writing X to ...
...
|XX |
| O |
|O |
player-1 writing O to ...
9
player-1 win
|XXO|
| O |
|O |
2019/07/19(金) 02:16:34.42ID:ApXEphk2
続き

player-2 writing X to ...
2
|X O|
|OOX|
|XXO|
player-1 writing O to ...
8
it's draw! finish a game without either one winning
2019/07/19(金) 02:19:09.79ID:ApXEphk2
2chのレイアウト変更を忘れてた
こうなる
https://i.imgur.com/h2VKHGc.jpg
2019/07/19(金) 02:28:05.00ID:ApXEphk2
深夜だからか貼り付けミスってた
>>841
https://pastebin.com/6ZRajAGz
2019/07/19(金) 08:59:52.92ID:MqWaI42B
「忘れてた」
「ミスってた」
「深夜だから」
2019/07/20(土) 00:17:01.47ID:fiB1nngo
>>836
最小重み経路問題かな?
軽く書いてみたけど、最短経路問題の3倍位難しい。
出直してくるわ。
2019/07/20(土) 02:47:49.06ID:fiB1nngo
>>836
https://ideone.com/PQwu2U
C++。出直してきたよ。
2パスになってる。
一回目は適当に上限値を取りに行って、二回目で本気探索する感じ。
2019/07/20(土) 08:18:17.29ID:jbjCUWIF
お題と回答
>>5 : 6 10 32 36 44
>>9 : 15 34 35 79
>>11=>>575 : 48 (78) 138-139 (140) 142 146 151 154
>>19 :
>>50, https://mevius.5ch.net/test/read.cgi/tech/1549160513/920 : 4 85 89
https://mevius.5ch.net/test/read.cgi/tech/1549160513/988 == >>164 : 59 61 167 169 189 192 201 202
>>90 : 95 96
>>99 :
>>200 : 214 219
>>215 : 227
>>220 : 232 240 248 256 268
>>235 : 236 237 238 239 247 249 259 342 353
>>320 : 321 323 327 330 340
>>322 : 325 328 329 331 332 339 341 358 359
2019/07/20(土) 08:18:32.72ID:jbjCUWIF
>>362 : 367 369 370 371 374 379 380 382 414
>>368 : 390
>>388 : 487 (488) 553 559
>>400 : 401
>>408 :
>>417 : 418 419 421 426 432 433 436 438 442 446 451 452 456 471 474 480 482 489 492 495 498 528 530 540
>>479 :
>>555 : 556 558 564 565
>>557 : 560 562 568 569
>>570 : 574 577
>>573 : 604 622
>>600 : 605 607 611 613 627 691
>>615,626 :
>>632 : 637 640 645 649 650 687 689-690
2019/07/20(土) 08:18:48.37ID:jbjCUWIF
>>651 : 654 657 662 679 682
>>655 :
>>661 :
>>683 : 685
>>695,704,716,721 : 696 697 701 703 711 713 714 715 718 722 723 724 727 740-741
>>708 : 714
>>717 :
>>752 :
>>753 : (760)
>>767 : 775
>>778 : 779 788 (792) 794
>>789 : 790 (793)
>>807 : 810 811 812 814 815 816 821 823
>>824 : 826 827-828 829 831
2019/07/20(土) 08:19:03.91ID:jbjCUWIF
>>833 : 841
>>835 :
>>836 : 847
2019/07/20(土) 10:54:30.31ID:ilSI1heG
迷惑だからやめろ
やるなら言語別集計とか少しでも付加価値を入れろ
2019/07/20(土) 11:03:01.50ID:eNhk7IpQ
留数定理も知らないくせにしゃしゃりでてんじゃねえぞクソコテ白痴クロッチロット野郎が
2019/07/20(土) 14:28:34.17ID:jbjCUWIF
>>852
>言語別集計
次スレで採用しようと思います、このスレでよく使われる言語とその程度を棒グラフ的に認識したくなりました
855デフォルトの名無しさん
垢版 |
2019/07/20(土) 14:50:09.53ID:OIy5RkDH
>>854
本当に申し訳ないんですがここに貼るないでもらっていいですか
856デフォルトの名無しさん
垢版 |
2019/07/20(土) 14:51:10.98ID:OIy5RkDH
認識したいのならご自由にでも迷惑だからここには貼らないで
2019/07/20(土) 15:04:46.84ID:UpWxMySu
>>848
本当に迷惑だからやめろ
工夫なんか一切しなくていいから金輪際やめろ
2019/07/20(土) 15:23:47.14ID:QHhW8HGw
>>854
自分のPC上で好きなだけやれよ
859デフォルトの名無しさん
垢版 |
2019/07/20(土) 18:06:54.10ID:k4+mr7b7
お題: できるだけ少ない回数で1から1000の数を判定しろ

入力: 775
出力 n==755

入力: 2,4, ...., 1000
出力 n%2

入力: 3,4,5,6, 10
出力 : n-3<=3 ||n==10
2019/07/20(土) 18:27:26.16ID:fiB1nngo
あっ。あっ。頭が!爆発!!しちゃうーーーーーーーー!!!
2019/07/20(土) 19:19:03.53ID:eeWyC8j7
>>859
> 入力: 2,4, ...., 1000
> 出力 n%2
これ間違えてね?
862デフォルトの名無しさん
垢版 |
2019/07/20(土) 19:25:23.08ID:c0ewdrdO
桃白白改めミスターポポ改めピラフ改めピッコロさんは毎回適当に出題してるからね
863デフォルトの名無しさん
垢版 |
2019/07/20(土) 19:58:58.98ID:k4+mr7b7
>>861
うん
2019/07/20(土) 21:47:04.48ID:riEgRod9
>>859
xy座標で y = xのn-1次以下の式が
n個の点があたえられると導けるから
その出力の一意性に疑問がある
865デフォルトの名無しさん
垢版 |
2019/07/20(土) 23:23:39.84ID:ge7gFbNK
お題
正の整数nと、正の整数のリスト2つ
a_1, ..., a_k
b_1, ..., b_k
が与えられる。
これに対して以下の操作を繰り返す。

操作: n*a_i/b_iが整数になる最初のa_i/b_iをnに掛ける

この操作ができなくなる時が来るかどうか判定してください。
2019/07/20(土) 23:44:40.61ID:riEgRod9
>>865
lisp
(loop for a in '(1 4 3 4 5 6) for b in '(7 8 9 10 11 12) with n = 14 when (integerp (* (/ a b) n)) do (return (format t "a:~a b:~a" a b)) finally (princ "not found"))
a:1 b:7

(loop for a in '(1 4 3 4 5 6) for b in '(7 8 9 10 11 12) with n = 13 when (integerp (* (/ a b) n)) do (return (format t "a:~a b:~a" a b)) finally (princ "not found"))
not found
2019/07/21(日) 00:23:35.41ID:Bd+iRrer
>>853
頭のおかしいガイジのくせに数学を語ってんじゃねぇよ
ぶっ殺すぞガイジ
実関数もわかってねぇくせに複素関数を語ってんじゃねぇよ
おめえの腸を掘り出して排水溝に捨てるぞ
868デフォルトの名無しさん
垢版 |
2019/07/21(日) 00:27:00.70ID:RHDfdbdw
>>866
説明が足りなかった
iを見つけたら
n = n*a_i/b_i
として同じことを繰り返す
2019/07/21(日) 02:19:32.68ID:m/GaQUZU
>>868
https://pastebin.com/QJzjZLWg
a:1 b:7 n:14
a:4 b:8 n:2
n finally 1
2019/07/21(日) 03:17:35.19ID:okP8VzSh
>>848
そのまとめ、専ブラ(ChMate)使ったら何も加工せずにより良い結果を表示できる
ってか、あんたの投稿で出題に無関係なレスもピックアップされてしまう
百害あって一利なし、なのでヤメてくれ
2019/07/21(日) 08:20:50.09ID:o8Rw7GgG
◆QZaw55cn4c のまとめ(と称した自己満足)は本当に迷惑だからやめてほしい
2019/07/21(日) 09:52:12.84ID:z5eK/QET
>>867
コテハン付け忘れてんぞw
2019/07/21(日) 12:17:22.63ID:vddupZNY
>>870
その専用ブラウザはアンカーのほかにスレッドURLにも対応していますか?
https://mevius.5ch.net/test/read.cgi/tech/1558168409/833 : 841
https://mevius.5ch.net/test/read.cgi/tech/1558168409/835
https://mevius.5ch.net/test/read.cgi/tech/1558168409/836 : 847
こういう形式であってもピックアップする機能があるのですか?
2019/07/21(日) 12:22:59.36ID:JSHlhL4U
とにかく迷惑だからやめろ
2019/07/21(日) 12:37:24.29ID:m/GaQUZU
>>873
おまえも一応プログラマだろ
本当に自分でそれ書けないのか?
2019/07/21(日) 13:08:23.15ID:vddupZNY
>>875
>>873 は実害報告(>>870) に対する回避策への調査であり、プログラミング可能性とは関係ないでしょう
2019/07/21(日) 13:14:57.26ID:6reBljd1
>>876
回避策も何も、お前が書き込みをやめればすむだけの話だ
2019/07/21(日) 14:00:38.73ID:LwmwcwKU
なんで手間暇かけて他人の嫌がる余計なことするのかね
ろくな回答書けないなら黙ってROMってろって思うわ
2019/07/21(日) 14:03:18.32ID:DBsZJ8x+
これだから朝鮮人は嫌われるんだよ
2019/07/21(日) 14:51:20.84ID:5KK3hTpc
https://ideone.com/37oWvg
質問だけど、>>836 のループ展開版書いてたんだけど、
終了条件わからないんだけど、どうしたらいいと思う?
2019/07/21(日) 15:57:20.08ID:5KK3hTpc
https://ideone.com/lOmm7w
>>836
C++。できた。終了位置がレンジ外だったりした。
ただ、いじりすぎてロックインしてないか心配だ。

概要としては、最小重み経路問題の非再帰関数バージョン。のはず。
2019/07/21(日) 16:07:33.87ID:5KK3hTpc
なんか降ってきたわ。ありがたやー。
883デフォルトの名無しさん
垢版 |
2019/07/21(日) 21:50:34.29ID:WILkXhL9
>>865
問題かよくわからない。a_i/b_iをnに掛けた結果をどうするのか?何かに代入するのか?
2019/07/21(日) 22:55:45.10ID:tHXql6vE
n*a_i/b_iが整数になったらnにそれを代入して、もう一度頭から繰り返すんじゃろ
で、無限にその操作を繰り返せるのか途中で終わるのかを判定する
2019/07/22(月) 04:31:58.44ID:Q+N+yzYS
>>873
スレッドURLにも対応してる、しつこいよあんた
2019/07/22(月) 04:43:22.10ID:wriJoSF9
>>873は百害あって一理なし
2019/07/22(月) 05:57:37.39ID:R4+31Tcv
QZとか言う馬鹿は自分がやっている事がことごとく嫌がらせになっているというのにも
全く気づいてないんだろうなあ
2019/07/22(月) 10:03:01.17ID:xuhhP9lh
おまけにこの糞コテは数学もまともにできない低能
2019/07/22(月) 11:18:34.47ID:wZJ8iqbX
良かれと思ってやったのに迷惑だと言われる
千羽づるみたいだなって思いました
2019/07/22(月) 11:35:03.07ID:sp7+c3NQ
>>889
千羽鶴なら日本の文化だからまだいいよ
QZのは明らかに異国の匂いがする
2019/07/22(月) 11:38:44.03ID:RNJMLfCg
>>889
千羽鶴なら独善ではあっても善意のつもりだというのは分かるが、QZのは他人のためでなく自分がそうしたいというだけの理由だから、より嫌われる
892836
垢版 |
2019/07/22(月) 14:11:57.23ID:GAEqWBnq
お題・ルールは、
>>838
のままで良いです

マスは、11 * 11 で、やってみましょう!

空行・_ は、単に見やすくしただけなので、無視してください

S2953_94137_3
71546_79881_4
83411_29465_2
23716_54268_4
47385_73638_9

55263_74296_1
34945_87362_5
96755_42186_7
14893_12472_6
71911_47852_1

29437_95134_E
2019/07/22(月) 17:05:26.62ID:mrS8zraI
>>892
https://ideone.com/aTBvPq
C++。あってるかはしらねーが、初期値を与えなおしてみたよ。
2019/07/22(月) 17:08:22.90ID:mrS8zraI
>>892
問い2は道順取れてるので頭と尻尾から配列なめてけば一応、かち合う場所が取れるよ。
2019/07/22(月) 17:53:24.27ID:mrS8zraI
https://ideone.com/ymnJMi
C++。バグがあったので直した。
最初の数値が固定値だったので、マスの値に変更した。
2019/07/22(月) 19:52:32.52ID:27NBQOQ4
S66
996
19E

超単純化した↑の場合
問1の場合はコスト18
問2の場合は座標(0,2) コスト19
で良いんだよな?
2019/07/22(月) 20:21:15.73ID:mrS8zraI
ホンダがらったフンだがらったヘンだがらった!フンフン!!

いでよ、主催者!!!
898デフォルトの名無しさん
垢版 |
2019/07/22(月) 20:27:49.31ID:vmYUDJ0J
>>897
ここには特に主催している人は居ないし、そもそも組織になっていない。各個人か勝手にお題を出して解きたい人が解いてるだけ。
おそらく常連は居るだろうが基本的に匿名で誰が誰だかよくわからず、人か入れ替わっていてもわからない。
2019/07/22(月) 22:09:07.24ID:zz8dj3fo
問1ってダイクストラ法まんまでいいの?
900836
垢版 |
2019/07/23(火) 09:29:05.01ID:5GIBUFQK
問2 について考えてみた

最短ターンでは、10ターンで、双方が出会うけど、
その時の双方を足したコストが、最小とは限らない!

だから迂回路の場合、つまり、11ターン以上で出会うマスも、すべて考慮して、
その中から最小コストを選ぶ必要がある

例えば、あるマスが、S・E 双方から12ターンなど

その際、双方からのターン数が異なる場合は、関係ない。
例えば、あるマスが、Sから11ターンで、Eから13ターンなど

>>899
ダイクストラ法で良い。
漏れは、総当たりでやってみる
901836
垢版 |
2019/07/23(火) 09:37:45.12ID:5GIBUFQK
>>896
問1 は、6 + 6 + 6 = 18

問2 は、左下の1 の所で出会うのなら、
S から、9 + 1 = 10
E から、9 + 1 = 10
で、合計20

出会うマスのコストを2回足しているけど、これで良いか
2019/07/23(火) 13:22:20.59ID:QB0eaOex
>>898
あ、それはわかってるよ。
問題の主催者(>>836)を呼びたかった。
やってきたので召喚成功だ。

ふふ。
2019/07/23(火) 16:42:15.95ID:0hlsR1TA
Sは左上、Eは右下、盤面は正方形で良いのか?それともそれ以外のパターンも考慮しなきゃいけないのか
904836
垢版 |
2019/07/23(火) 17:53:12.70ID:5GIBUFQK
>>903
正方形ではなく、長方形だね

マスの座標は、行列の順で、開始点は( 行0, 列0 )

漏れは、盤面の周囲に、番兵を置いて、考えてます
905896
垢版 |
2019/07/23(火) 18:05:44.96ID:GpNXeX+q
>>901
うん、ぼけてた
コスト20やなw

問2で盤面サイズが奇数x偶数とかの場合はゴールはどう考えればいいの? 同時移動だとすれ違っちゃうが
Sが常に先に動く (Eが居るところで合流)
Eが常に先に動く (Sが居るところで合流)
SとE好きな方が先に動く (コストが低いマスの方で合流)
SとEが同時に動く (すれ違って合流できない? 中間点で合流? その場合のコストは?)

たとえば S12E とかの場合
906836
垢版 |
2019/07/23(火) 20:32:34.55ID:5GIBUFQK
盤面のサイズが偶数では、問2 は無理

必ず、奇数×奇数
2019/07/23(火) 21:26:26.55ID:JcFEdZGk
>>885
回答いただき感謝いたします
2019/07/23(火) 22:05:37.82ID:GpNXeX+q
>>906
偶数×偶数も行けるやろ
偶数×奇数、奇数×偶数は無理だが
2019/07/24(水) 14:07:43.24ID:i9YSslum
目の前で出会うことが目的じゃないの?
910デフォルトの名無しさん
垢版 |
2019/07/25(木) 16:00:43.87ID:JLY47fmQ
任意の整数を引数に取り、フィボナッチ数か判別するisfib関数を作れ。
なお、フィボナッチ数では無い場合任意の整数と-1の組(Cなどは代わりの物)を、
フィボナッチ数ならフィボナッチ数=任意の整数とそれがフィボナッチ数列の何番めかを表す数の組を返す事。

例:
isfib 0 = (0,1)
isfib 1 = (1,2)
isfib 2 = (2,4)
isfib 3 = (3,5)
isfib 4 = (4,-1)
isfib 5 = (5,6)
2019/07/25(木) 18:03:38.63ID:D8pzUtDE
>>910
Common Lisp
https://pastebin.com/qqYUKSem

出力
(loop for i from 0 to 6 do (isfib i))
(0 . 1)
(1 . 2)
(2 . 4)
(3 . 5)
(4 . -1)
(5 . 6)
(6 . -1)
2019/07/26(金) 01:20:21.47ID:E/v28Z/A
>>910 Perl5

sub isfib {
 $v = shift;
 %h = map{$_ => $_} @s = (0,1);
 do {
  $f = $s[-2] + $s[-1];
  push @s, $f;
  $h{$f} //= @s;
 } while $f < $v;
 ($v, $h{$v} // -1);
}
printf "isfib $_ = (%d,%d)\n", isfib $_ for 0..5;

実行結果
$ perl 14_910_isfib.pl
isfib 0 = (0,0)
isfib 1 = (1,1)
isfib 2 = (2,4)
isfib 3 = (3,5)
isfib 4 = (4,-1)
isfib 5 = (5,6)
913デフォルトの名無しさん
垢版 |
2019/07/26(金) 06:33:07.15ID:NUjZudpe
>>910 Lua
function isFib(n)
  local a, b, c = 0, 1, 1
  while a < n do
    a, b, c = b, a + b, c + 1
  end
  if a ~= n then c = -1 end
  return n, c
end
914836
垢版 |
2019/07/26(金) 09:34:26.36ID:54Ib42km
>>908-909
確かに、偶数×偶数は、
同じターンで、同じマスに入れますね!

S1
2E

S12
34E
2019/07/26(金) 09:50:12.39ID:rMhs1i6l
>>910
戻り値がbooleanじゃないのが気持ち悪い
2019/07/26(金) 21:09:58.82ID:D2C6zjmj
>>913
4のとき
isfib 4 = (5,-1)
にならない?
2019/07/26(金) 22:09:57.95ID:wMkqv1Wf
「何番目かを返す」ってのが地味に難しいな
そこまでの全てのフィボナッチ数を求めないと無理じゃね?
2019/07/26(金) 22:53:34.40ID:XK3Q7RTy
>>916 勘違いした
isfib 4 = (4,-1)
になる。合っている。
2019/07/26(金) 23:11:48.79ID:PBeJ5BeU
キャッシュ層込みの問題だな
2019/07/26(金) 23:31:36.17ID:HmAxaouE
お題: 水素原子、酸素原子、炭素原子からなる分子の化学式が与えられる。原子の種類と個数から考えられる分子構造をデータ構造で表現し、コンソール画面に可能なかぎり表示しなさい。

(例)
H2O --> H - O - H
CO2 --> O = C = O
CH4 -->
  H
 |
H- C - H
  |
  H
2019/07/26(金) 23:39:37.50ID:HmAxaouE
(例2) 図式化が難しければ、データ構造だけでもいい。

CO2 → (C, O, O), ((0, 1), (0, 2)).
H2O → (H, H, O), ((0, 2), (1, 2)).
CH4 → (C, H, H, H), ((0, 1), (0, 2), (0, 3)).
レス数が900を超えています。1000を超えると表示できなくなるよ。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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