プログラミングのお題スレです。
【出題と回答例】
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/
宿題は宿題スレがあるのでそちらへ。
※前スレ
プログラミングのお題スレ Part20
https://mevius.5ch.net/test/read.cgi/tech/1624028577/
探検
プログラミングのお題スレ Part21
■ このスレッドは過去ログ倉庫に格納されています
2022/11/13(日) 19:00:36.84ID:ZCYlhUwL
510デフォルトの名無しさん
2023/03/02(木) 01:19:19.82ID:qVygpVDj511デフォルトの名無しさん
2023/03/03(金) 10:31:20.70ID:JG2g5M5t Haskellすごい
512デフォルトの名無しさん
2023/03/04(土) 05:29:06.95ID:SAvF8kPk513デフォルトの名無しさん
2023/03/04(土) 19:18:05.94ID:S5cRs10W514デフォルトの名無しさん
2023/03/05(日) 09:55:30.27ID:GagStXQF 友人がブログを削除したんですが、そのあと、そのURLをクリックすると
アダルトサイトに飛ぶようになりました。本人はずかしいはずです。
これは何が原因なんでしょうか?
アダルトサイトに飛ぶようになりました。本人はずかしいはずです。
これは何が原因なんでしょうか?
515デフォルトの名無しさん
2023/03/05(日) 11:12:32.57ID:/Qd0pRlS こういう話の登場人物
「友人」は大抵が本人
「友人」は大抵が本人
516デフォルトの名無しさん
2023/03/05(日) 11:32:29.47ID:GagStXQF こんなところで聞く方が無駄だとわかりました。すいません
517デフォルトの名無しさん
2023/03/05(日) 11:56:22.33ID:2xMyVUh5 >>516
負けてて草
負けてて草
518デフォルトの名無しさん
2023/03/05(日) 12:23:59.19ID:EVYX2Tnh 答えを聞き出す前に暴言はいて逃亡するのは三流
答えを聞き出してから態度を豹変させるのが一流
答えを聞き出してから態度を豹変させるのが一流
519デフォルトの名無しさん
2023/03/05(日) 12:57:55.93ID:E79AODHp 無駄な労力を費やす前に退却するのが真の一流
520デフォルトの名無しさん
2023/03/05(日) 14:53:40.73ID:YlwUczDE >>514
println("知らんがな。")
println("知らんがな。")
521デフォルトの名無しさん
2023/03/05(日) 18:35:08.91ID:Ueh2Ngp1 >>456
Elixir で再帰で書いた。
末尾再帰になっているかどうかは分からないけど。難しかった
https://paiza.io/projects/2HEEsPP7gqa7Yoq2U1darw?language=elixir
以下は、データの変遷
input_list は、[ ["ガンド部長", "ブリ事業部長", "9000"], ["モジャコ", "ヤズ係長", "39000"] ]
input_map は順不同で、%{ "イナダ課長" => {"ワラサ部長", 5000}, "ガンド部長" => {"ブリ事業部長", 9000} }
蓄積変数は、[ {["", "ブリ事業部長", "ガンド部長"], 41000},
{["", "ブリ事業部長", "メジロ部長", "ハマチ課長", "ヤズ係長", "モジャコ"], 147000} ]
出力はリストを逆順にして、
41000 : ガンド部長 -> ブリ事業部長
147000 : モジャコ -> ヤズ係長 -> ハマチ課長 -> メジロ部長 -> ブリ事業部長
Elixir で再帰で書いた。
末尾再帰になっているかどうかは分からないけど。難しかった
https://paiza.io/projects/2HEEsPP7gqa7Yoq2U1darw?language=elixir
以下は、データの変遷
input_list は、[ ["ガンド部長", "ブリ事業部長", "9000"], ["モジャコ", "ヤズ係長", "39000"] ]
input_map は順不同で、%{ "イナダ課長" => {"ワラサ部長", 5000}, "ガンド部長" => {"ブリ事業部長", 9000} }
蓄積変数は、[ {["", "ブリ事業部長", "ガンド部長"], 41000},
{["", "ブリ事業部長", "メジロ部長", "ハマチ課長", "ヤズ係長", "モジャコ"], 147000} ]
出力はリストを逆順にして、
41000 : ガンド部長 -> ブリ事業部長
147000 : モジャコ -> ヤズ係長 -> ハマチ課長 -> メジロ部長 -> ブリ事業部長
522デフォルトの名無しさん
2023/03/06(月) 14:19:42.45ID:qyV2HHpm >>456
awkで書いてみた
https://ideone.com/Ufy2b4
再帰呼び出ししてみた。
表示順を考えなくて良いならmember[]は要らなくなるので
BEGIN{}も要らないし、もう一段簡単になる。
awkで書いてみた
https://ideone.com/Ufy2b4
再帰呼び出ししてみた。
表示順を考えなくて良いならmember[]は要らなくなるので
BEGIN{}も要らないし、もう一段簡単になる。
523デフォルトの名無しさん
2023/03/07(火) 12:52:38.48ID:XpfdbiSa お題
個人の名前,上司の名前,個人の仕事力
が入力されます
個人の仕事力とその部下たちの仕事力を合計した値を出力してください
ブリ事業部長は全員の仕事力の合計になります
入力
ガンド部長,ブリ事業部長,9000
モジャコ,ヤズ係長,39000
ワラサ部長,ブリ事業部長,46000
メジロ部長,ブリ事業部長,34000
ブリ事業部長,,32000
ツバイソ,コズクラ係長,24000
ツバス係長,ハマチ課長,23000
ワカナ,ツバス係長,4000
イナダ課長,ワラサ部長,5000
ヤズ係長,ハマチ課長,23000
ワカナゴ係長,イナダ課長,49000
フクラギ課長,ガンド部長,17000
ハマチ課長,メジロ部長,19000
コズクラ係長,フクラギ課長,31000
出力
ガンド部長:81000
モジャコ:39000
ワラサ部長:100000
-----省略-----
個人の名前,上司の名前,個人の仕事力
が入力されます
個人の仕事力とその部下たちの仕事力を合計した値を出力してください
ブリ事業部長は全員の仕事力の合計になります
入力
ガンド部長,ブリ事業部長,9000
モジャコ,ヤズ係長,39000
ワラサ部長,ブリ事業部長,46000
メジロ部長,ブリ事業部長,34000
ブリ事業部長,,32000
ツバイソ,コズクラ係長,24000
ツバス係長,ハマチ課長,23000
ワカナ,ツバス係長,4000
イナダ課長,ワラサ部長,5000
ヤズ係長,ハマチ課長,23000
ワカナゴ係長,イナダ課長,49000
フクラギ課長,ガンド部長,17000
ハマチ課長,メジロ部長,19000
コズクラ係長,フクラギ課長,31000
出力
ガンド部長:81000
モジャコ:39000
ワラサ部長:100000
-----省略-----
524デフォルトの名無しさん
2023/03/07(火) 13:16:03.87ID:bbtrqWNc お題:数字が入力されるので日付かどうか判定してください
in < 20230306
out > true
in < 20232250
out > false
in < 20230306
out > true
in < 20232250
out > false
525デフォルトの名無しさん
2023/03/07(火) 14:17:27.14ID:+pZA1cjF 仕事そっちのけでやり始めちゃいそうないいお題だ
526デフォルトの名無しさん
2023/03/07(火) 21:36:23.54ID:kYiYHi9/ >>524
ChatGPTに聞いたら瞬殺だった。
@Python
import datetime
def is_valid_date(date_string):
try:
datetime.datetime.strptime(date_string, '%Y%m%d')
return True
except ValueError:
return False
ChatGPTに聞いたら瞬殺だった。
@Python
import datetime
def is_valid_date(date_string):
try:
datetime.datetime.strptime(date_string, '%Y%m%d')
return True
except ValueError:
return False
527526
2023/03/07(火) 21:37:25.32ID:kYiYHi9/ インデントに失敗した orz
528デフォルトの名無しさん
2023/03/07(火) 22:32:08.33ID:3eieSVrf >>524
haskell
https://ideone.com/1oSNqd
“数値が読めない”とかは無視
純粋にy/m/dがグレゴリオ歴として成立するかどうかの判定
wikiに載ってたy/m/dから修正ユリウス通日を計算する公式を使ってその月の長さを(次の月の初日のユリウス通日)-(その月の初日のユリウス通日)で算出
haskell
https://ideone.com/1oSNqd
“数値が読めない”とかは無視
純粋にy/m/dがグレゴリオ歴として成立するかどうかの判定
wikiに載ってたy/m/dから修正ユリウス通日を計算する公式を使ってその月の長さを(次の月の初日のユリウス通日)-(その月の初日のユリウス通日)で算出
529デフォルトの名無しさん
2023/03/07(火) 23:34:02.90ID:s3GtgFEy >>524
Kotlin
java.time.LocalDate クラスに判定させるという超手抜きプログラム。
https://paiza.io/projects/giMWgob2AM7gEy4sGrP50w
Kotlin
java.time.LocalDate クラスに判定させるという超手抜きプログラム。
https://paiza.io/projects/giMWgob2AM7gEy4sGrP50w
530デフォルトの名無しさん
2023/03/08(水) 10:26:04.32ID:/qygPgTx531デフォルトの名無しさん
2023/03/08(水) 13:26:39.43ID:dHMh5Dpe532デフォルトの名無しさん
2023/03/08(水) 21:40:39.00ID:Vy/Qcp0S533デフォルトの名無しさん
2023/03/09(木) 01:22:26.54ID:fNPpmDIo お題:引数の絶対値を1-2-5シリーズ(1, 2, 5と、その10の整数べき乗の集合
(..., 0.1, 0.2, 0.5, 1, 2, 5, 10, 20, 50, ...)に切り捨てる関数。
IEEE754で正確に表現出来ない数(0.2とか)になる場合、最も近い値を返す事。
(例 : 0.2の場合は0x1.999999999999ap-3
その場合でも、(切り捨てなので)引数の絶対値を超えてはならない)
f(1) → 1
f(1.1) → 1
f(1.9) → 1
f(2) → 2
f(2.1) → 2
f(4.9) → 2
f(5) → 5
f(5.1) → 5
f(9.9) → 5
f(10) → 10
f(10.1) → 10
発展的なお題:
引数の絶対値が5e-308未満の場合の望ましいと思われる振る舞いについて述べよ
(「思われる」なので正解はありません)。
(..., 0.1, 0.2, 0.5, 1, 2, 5, 10, 20, 50, ...)に切り捨てる関数。
IEEE754で正確に表現出来ない数(0.2とか)になる場合、最も近い値を返す事。
(例 : 0.2の場合は0x1.999999999999ap-3
その場合でも、(切り捨てなので)引数の絶対値を超えてはならない)
f(1) → 1
f(1.1) → 1
f(1.9) → 1
f(2) → 2
f(2.1) → 2
f(4.9) → 2
f(5) → 5
f(5.1) → 5
f(9.9) → 5
f(10) → 10
f(10.1) → 10
発展的なお題:
引数の絶対値が5e-308未満の場合の望ましいと思われる振る舞いについて述べよ
(「思われる」なので正解はありません)。
534529
2023/03/09(木) 02:14:16.41ID:/MDyYnso >>531
俺も最初はそうやって parse() 使ってやるやつを作ったんだけど、それだと 20230229 や 20231131 が true になる。
どうやら parse() でやろうとすると年月日それぞれの値のチェックはするが年月日の値を繋げた状態で日付として
正しいかのチェックがされない。日に関して1~31なら全てOKになってしまってそれが何月なのかのチェックがされない。
それで文字列を分解して整数にしてから LocalDate.of(y, m, d) のやり方でやるようにしたんだよ。それだとチェックされるので。
俺も最初はそうやって parse() 使ってやるやつを作ったんだけど、それだと 20230229 や 20231131 が true になる。
どうやら parse() でやろうとすると年月日それぞれの値のチェックはするが年月日の値を繋げた状態で日付として
正しいかのチェックがされない。日に関して1~31なら全てOKになってしまってそれが何月なのかのチェックがされない。
それで文字列を分解して整数にしてから LocalDate.of(y, m, d) のやり方でやるようにしたんだよ。それだとチェックされるので。
535デフォルトの名無しさん
2023/03/09(木) 02:59:36.54ID:3+H8grLx536デフォルトの名無しさん
2023/03/09(木) 07:19:28.41ID:Kr9kVNlI538デフォルトの名無しさん
2023/03/09(木) 09:11:59.20ID:80vOWs2E 0.2より小さいのに0.2を返す意図がわからない
539デフォルトの名無しさん
2023/03/09(木) 09:33:04.67ID:80vOWs2E 例えばIEEE754の倍精度だと10^23に一番近い値は2個存在するけど
それぞれの入力値に対して何を返す?
それぞれの入力値に対して何を返す?
540デフォルトの名無しさん
2023/03/09(木) 09:51:28.51ID:8jWFs2vv541デフォルトの名無しさん
2023/03/09(木) 10:06:31.31ID:NA9KE422 文字列で処理した方が楽そうだな
542デフォルトの名無しさん
2023/03/09(木) 10:11:31.04ID:OmNiotFL543デフォルトの名無しさん
2023/03/09(木) 13:53:10.22ID:bNerenDr544デフォルトの名無しさん
2023/03/09(木) 14:58:46.74ID:80vOWs2E >>543
2^m 5^n じゃなくて [1,2,5] x 10^n
2^m 5^n じゃなくて [1,2,5] x 10^n
545デフォルトの名無しさん
2023/03/09(木) 17:53:05.38ID:T9AEG++6546デフォルトの名無しさん
2023/03/09(木) 18:24:41.73ID:80vOWs2E 10^23の結果が10^23にならない
547デフォルトの名無しさん
2023/03/09(木) 18:51:23.08ID:80vOWs2E f(x) = max { 近似(a×10ⁿ) | a∈{1,2,5}, n∈ℤ, 近似(a×10ⁿ)≦x }
お題はこれなんだよね
お題はこれなんだよね
548デフォルトの名無しさん
2023/03/09(木) 19:49:31.53ID:AqeRBK10549デフォルトの名無しさん
2023/03/09(木) 20:42:50.12ID:AqeRBK10 とりあえず>>548の解釈でhaskell
https://ideone.com/KMyKL4
入力を普通に受け渡しすると
f(10^23) = 10^23
f(9.999999999999999e22) = 5e22
は実現できるはずないので引数は文字列で渡す
文字列は0〜9, e,.のみ処理
パーサーやん
https://ideone.com/KMyKL4
入力を普通に受け渡しすると
f(10^23) = 10^23
f(9.999999999999999e22) = 5e22
は実現できるはずないので引数は文字列で渡す
文字列は0〜9, e,.のみ処理
パーサーやん
550デフォルトの名無しさん
2023/03/09(木) 21:55:00.68ID:Kr9kVNlI551デフォルトの名無しさん
2023/03/10(金) 00:33:46.36ID:5SQWn2gE このすいや、違うって、出力側の問題ではなく入力側
出力側は出力が1.0e_、2.0e_、5.9e_の形に限られるため、打ち切り誤差でに4.9999..e23とか9.999...e12とか出力されてもそれぞれ5e23、1e13の打ち切り誤差と判断できるけど、入力側では不可能、つまりそもそも1e23を入力するには文字列がなんかで入力受け取るとか、significantとexponentを整数値で受け取る形式にするとかしないとそもそも入力を受けられないけどそこはどうすんの?つて話
出力側は出力が1.0e_、2.0e_、5.9e_の形に限られるため、打ち切り誤差でに4.9999..e23とか9.999...e12とか出力されてもそれぞれ5e23、1e13の打ち切り誤差と判断できるけど、入力側では不可能、つまりそもそも1e23を入力するには文字列がなんかで入力受け取るとか、significantとexponentを整数値で受け取る形式にするとかしないとそもそも入力を受けられないけどそこはどうすんの?つて話
552デフォルトの名無しさん
2023/03/10(金) 00:35:33.83ID:5SQWn2gE あれ?なんか日本語変換メチャクチャになってる
言いたい事わかる?
1e23なんてそもそも例えばhaskellのDouble型だと受け取れないんだよ
言いたい事わかる?
1e23なんてそもそも例えばhaskellのDouble型だと受け取れないんだよ
553デフォルトの名無しさん
2023/03/10(金) 07:45:37.27ID:9bh7XNaU554デフォルトの名無しさん
2023/03/10(金) 11:39:00.03ID:RgyaHPNK >>553
何がおかしい?
例えば
10^23の結果が10^23にならない
と指摘してたけどこれは違う
コードはちゃんと
f(9.999999999999999e22) = 5e22
を算出してる
しかし>>545のコードでコードの使用者が
a = fl125 $ 10^23
とやってもaには1e23ではなく5e22が返ってきてしまう
しかしそれはfl125がうまく機能していないのではなくhaskellの使用上標準の値受け渡しでは9.999999999999999e22と1e23を区別して渡す方法がないんだよ
かと言って
「9.999999999999999e22が引数で来る事はないな、きっとこれは1e23が精度の限界で誤って渡されてるんだ、引数は1e23とみなして答え返そう」
とかあり得んやろ?
わかる?
何がおかしい?
例えば
10^23の結果が10^23にならない
と指摘してたけどこれは違う
コードはちゃんと
f(9.999999999999999e22) = 5e22
を算出してる
しかし>>545のコードでコードの使用者が
a = fl125 $ 10^23
とやってもaには1e23ではなく5e22が返ってきてしまう
しかしそれはfl125がうまく機能していないのではなくhaskellの使用上標準の値受け渡しでは9.999999999999999e22と1e23を区別して渡す方法がないんだよ
かと言って
「9.999999999999999e22が引数で来る事はないな、きっとこれは1e23が精度の限界で誤って渡されてるんだ、引数は1e23とみなして答え返そう」
とかあり得んやろ?
わかる?
555デフォルトの名無しさん
2023/03/10(金) 12:12:05.54ID:vz4CBcOd 本当に読んだ?
556デフォルトの名無しさん
2023/03/10(金) 12:45:16.91ID:wA/P8BtN もういいよ
557デフォルトの名無しさん
2023/03/10(金) 16:22:43.21ID:CaMSg8vJ お題:スレのHTMLが入力されるのでもっともレスが付いているレス番号を表示しなさい
複数同率の場合は複数表示しなさい
複数同率の場合は複数表示しなさい
558534
2023/03/10(金) 16:31:19.44ID:ZGHw+/B0 >>542
そんなやり方があったとは気付かなかった。
そんなやり方があったとは気付かなかった。
559デフォルトの名無しさん
2023/03/10(金) 17:58:27.90ID:ZGHw+/B0 >>533
kotlin
出力がちょっと違うけど値としては合っている。
まあしかし BigDecimal 使って文字列で処理しちゃってて桁数大きくてもドーンと来いみたいになっててつまりほぼ手抜き。
https://paiza.io/projects/bgGSIZ8CEEFszHzDBQqD8g
kotlin
出力がちょっと違うけど値としては合っている。
まあしかし BigDecimal 使って文字列で処理しちゃってて桁数大きくてもドーンと来いみたいになっててつまりほぼ手抜き。
https://paiza.io/projects/bgGSIZ8CEEFszHzDBQqD8g
560デフォルトの名無しさん
2023/03/10(金) 18:24:41.36ID:ZGHw+/B0 あ。負の数には未対応だった。
561デフォルトの名無しさん
2023/03/10(金) 18:51:26.52ID:ZGHw+/B0 こっそり負の値に対応するプログラムに修正しておいた。
562デフォルトの名無しさん
2023/03/10(金) 18:53:36.03ID:ZGHw+/B0 だめだ。 -0.9 や 0.9 みたいなのがうまく行かない。後で時間があったら考えよう。
563デフォルトの名無しさん
2023/03/10(金) 20:31:33.45ID:neDfohzd564デフォルトの名無しさん
2023/03/10(金) 21:02:13.08ID:fvzGmxnd565デフォルトの名無しさん
2023/03/10(金) 22:07:04.07ID:HEpguiV4 >>561
誰も見てないから心配すんな。
誰も見てないから心配すんな。
566559
2023/03/12(日) 02:44:00.49ID:eBdq5KuG >>533
Kotlin
BigDecimal (及び BigInteger)は使うが文字列を使うのは止めて色々計算して何とかするようにした。
https://paiza.io/projects/6H3b_gf_Kc3RCT6_S_HISw
Kotlin
BigDecimal (及び BigInteger)は使うが文字列を使うのは止めて色々計算して何とかするようにした。
https://paiza.io/projects/6H3b_gf_Kc3RCT6_S_HISw
567デフォルトの名無しさん
2023/03/12(日) 18:49:22.70ID:eBdq5KuG >>557のお題を勝手に改造
お題:5chのスレのURLが入力されるので内容を取得してもっともレスが付いているレス番号から順に出力しなさい
複数同率の場合は複数表示しなさい
回答例
Kotlin
https://paiza.io/projects/CICvfqwT52X4FsmIwxb_Zw
出力はURLと「レス数: レス番号, ...」になる。
要するに、>>557作っている内に最大のやつ一つ出すだけなのも勿体ないなと思って改造して出来上がったが元のお題とちょっと違うのでお題も勝手に改造した。
お題:5chのスレのURLが入力されるので内容を取得してもっともレスが付いているレス番号から順に出力しなさい
複数同率の場合は複数表示しなさい
回答例
Kotlin
https://paiza.io/projects/CICvfqwT52X4FsmIwxb_Zw
出力はURLと「レス数: レス番号, ...」になる。
要するに、>>557作っている内に最大のやつ一つ出すだけなのも勿体ないなと思って改造して出来上がったが元のお題とちょっと違うのでお題も勝手に改造した。
568564
2023/03/13(月) 02:22:32.85ID:3T4oo4fg569デフォルトの名無しさん
2023/03/14(火) 04:11:08.17ID:39BjzOmR >>509
Ruby で、
require 'csv'
require 'json'
# 製品タイプの出現回数を数える。初期値は0
prod_type_count = Hash.new( 0 )
# 1行ずつ処理する。Array.new( 1 ) で先頭要素に、nil が入る。
# 蓄積変数・ary のインデックスと、出現回数を同じにする。
# 例えば、ary[ 2 ] には、2つ目のB やC などが入る
result_ary = CSV.foreach( "input.csv" ).
each_with_object( Array.new( 1 ) ) do |row, ary|
plus_1 = prod_type_count[ row[ 0 ] ] + 1
prod_type_count[ row[ 0 ] ] = plus_1
if ary[ plus_1 ] # 存在する
ary[ plus_1 ].push row
else # 存在しない
ary[ plus_1 ] = [ row ]
end
end
# p prod_type_count
#=> { "B"=>2, "C"=>3, "F"=>2, "E"=>3, "D"=>4, "A"=>1, "G"=>1 }
次へ続く
Ruby で、
require 'csv'
require 'json'
# 製品タイプの出現回数を数える。初期値は0
prod_type_count = Hash.new( 0 )
# 1行ずつ処理する。Array.new( 1 ) で先頭要素に、nil が入る。
# 蓄積変数・ary のインデックスと、出現回数を同じにする。
# 例えば、ary[ 2 ] には、2つ目のB やC などが入る
result_ary = CSV.foreach( "input.csv" ).
each_with_object( Array.new( 1 ) ) do |row, ary|
plus_1 = prod_type_count[ row[ 0 ] ] + 1
prod_type_count[ row[ 0 ] ] = plus_1
if ary[ plus_1 ] # 存在する
ary[ plus_1 ].push row
else # 存在しない
ary[ plus_1 ] = [ row ]
end
end
# p prod_type_count
#=> { "B"=>2, "C"=>3, "F"=>2, "E"=>3, "D"=>4, "A"=>1, "G"=>1 }
次へ続く
570569
2023/03/14(火) 04:12:26.06ID:39BjzOmR result_ary.shift # 先頭要素のnil を削除する
res = result_ary.each_with_object( [ ] ) do |outer_ary, accum|
outer_ary.sort_by! { |inner_ary| inner_ary[ 0 ] } # 製品タイプでソートする
transposed_ary = outer_ary.transpose # 2次元配列を転置する
accum.push ( { "製品タイプ" => transposed_ary[ 0 ],
"製品ID" => transposed_ary[ 1 ],
"製品色" => transposed_ary[ 2 ] } )
end
puts JSON.dump( res ) # 文字列化
# p result_ary
=begin
ソート後のデータ
[ [["A", "01", "Y"], ["B", "02", "B"], ["C", "04", "Y"], ["D", "07", "B"], ["E", "12", "C"], ["F", "15", "R"], ["G", "16", "M"]],
[["B", "03", "C"], ["C", "06", "G"], ["D", "08", "B"], ["E", "11", "Y"], ["F", "14", "G"]],
[["C", "05", "C"], ["D", "10", "M"], ["E", "13", "B"]],
[["D", "09", "B"]] ]
=end
res = result_ary.each_with_object( [ ] ) do |outer_ary, accum|
outer_ary.sort_by! { |inner_ary| inner_ary[ 0 ] } # 製品タイプでソートする
transposed_ary = outer_ary.transpose # 2次元配列を転置する
accum.push ( { "製品タイプ" => transposed_ary[ 0 ],
"製品ID" => transposed_ary[ 1 ],
"製品色" => transposed_ary[ 2 ] } )
end
puts JSON.dump( res ) # 文字列化
# p result_ary
=begin
ソート後のデータ
[ [["A", "01", "Y"], ["B", "02", "B"], ["C", "04", "Y"], ["D", "07", "B"], ["E", "12", "C"], ["F", "15", "R"], ["G", "16", "M"]],
[["B", "03", "C"], ["C", "06", "G"], ["D", "08", "B"], ["E", "11", "Y"], ["F", "14", "G"]],
[["C", "05", "C"], ["D", "10", "M"], ["E", "13", "B"]],
[["D", "09", "B"]] ]
=end
571567
2023/03/15(水) 02:47:25.92ID:N1pHvbol >>557
Kotlin
>>567を更に改造して>>568の言うような >>xxx-xxx とかも可能にした。
実際に受け付けるのは「>>」の後が「数」または「数-数」で複数ある場合はカンマ区切り。
https://paiza.io/projects/CDH-JDZD12laCkRrON4Q2A
Kotlin
>>567を更に改造して>>568の言うような >>xxx-xxx とかも可能にした。
実際に受け付けるのは「>>」の後が「数」または「数-数」で複数ある場合はカンマ区切り。
https://paiza.io/projects/CDH-JDZD12laCkRrON4Q2A
572デフォルトの名無しさん
2023/03/16(木) 19:59:21.18ID:rEpIo1do マッチ棒パズルソルバ
0123456789+-=×/からなる文字列が与えられる
この文字列にC変換1回、またはA変換とB変換を一回ずつ行って得られる文字列のうち数式として成立するものを列挙せよ
https://youtu.be/2sqvh8KBdQk
例
6 = 3 + 3 - 8 → 6 = 3 + 3 = 6
7 = 6 + 5 → 11 = 6 + 5
2 = 3 + 0 → 3 = 3 + 0, 2 = 2 + 0
6 = 9 - 3 → 5 = 8 - 3
A変換(逆変換がB変換)
6 → 5
8 → 0, 6, 9
9 → 3, 5
= → -
× → /
C変換
0 → 6,9
2 → 3
3 → 2,5
4 → 7,11
5 → 3
6 → 0
7 → 4,11
9 → 0
11 → 4,7
0123456789+-=×/からなる文字列が与えられる
この文字列にC変換1回、またはA変換とB変換を一回ずつ行って得られる文字列のうち数式として成立するものを列挙せよ
https://youtu.be/2sqvh8KBdQk
例
6 = 3 + 3 - 8 → 6 = 3 + 3 = 6
7 = 6 + 5 → 11 = 6 + 5
2 = 3 + 0 → 3 = 3 + 0, 2 = 2 + 0
6 = 9 - 3 → 5 = 8 - 3
A変換(逆変換がB変換)
6 → 5
8 → 0, 6, 9
9 → 3, 5
= → -
× → /
C変換
0 → 6,9
2 → 3
3 → 2,5
4 → 7,11
5 → 3
6 → 0
7 → 4,11
9 → 0
11 → 4,7
573デフォルトの名無しさん
2023/03/18(土) 05:36:02.04ID:YIU3ErvV >>572
A変換に + → - もあるよね?
A変換に + → - もあるよね?
574デフォルトの名無しさん
2023/03/18(土) 06:36:08.37ID:Pxj+DrXq 他にも色々と抜けっぽいのが
B変換 : A変換の逆変換
C変換 : B変換=>A変換 (元に戻るのは除く)
だから
A変換だけ(またはB変換だけ)ちゃんと考えて定義すれば良いよ
「数式が成り立つ」もちゃんと定義しないと
"1+1=2" "1+1" "1"
どこまで含む?
B変換 : A変換の逆変換
C変換 : B変換=>A変換 (元に戻るのは除く)
だから
A変換だけ(またはB変換だけ)ちゃんと考えて定義すれば良いよ
「数式が成り立つ」もちゃんと定義しないと
"1+1=2" "1+1" "1"
どこまで含む?
575デフォルトの名無しさん
2023/03/18(土) 12:24:06.83ID:u+wfSKhj576デフォルトの名無しさん
2023/03/18(土) 18:16:04.06ID:YIU3ErvV 要するにマッチ棒使って数字と四則演算記号と = 記号を表現した時に1本動かして、最低でも一つは = 記号がある状態で式が成立すれば良いんだよね?
577デフォルトの名無しさん
2023/03/18(土) 18:56:17.32ID:KeK4M5sZ >>576
yes
yes
578デフォルトの名無しさん
2023/03/20(月) 16:53:45.60ID:OQwjcDiz ≠もOK?
579デフォルトの名無しさん
2023/03/20(月) 17:51:34.56ID:xiC6G7QO まともに出題出来ないヤツは出題するなよ
580デフォルトの名無しさん
2023/03/21(火) 15:12:23.88ID:icU0z8mb AIは数式や記号に意味を持たせない
581デフォルトの名無しさん
2023/03/25(土) 18:45:52.85ID:WgnIlBna >>572
Kotlin
https://paiza.io/projects/mlep0Qk1tQhwMlC1r6awRw
式が成立するかの判定ではパターンマッチング使ってやっているので多分ちゃんと出来ないこともあるんじゃないかと思うが、多分だいたいは大丈夫。
式の計算は括弧を使った入れ子がないので再帰は使ってない。掛け算と割り算を優先してるだけ。
Kotlin
https://paiza.io/projects/mlep0Qk1tQhwMlC1r6awRw
式が成立するかの判定ではパターンマッチング使ってやっているので多分ちゃんと出来ないこともあるんじゃないかと思うが、多分だいたいは大丈夫。
式の計算は括弧を使った入れ子がないので再帰は使ってない。掛け算と割り算を優先してるだけ。
582521
2023/03/27(月) 05:06:18.68ID:YhTH5dNR >>523
Elixir で再帰で書いた。多分木の走査か。
末尾再帰になっているかどうかは分からないけど。
>>456 よりも、さらに難しかった
https://paiza.io/projects/oeDtiQEX0oQtWQT7SMKwLA?language=elixir
以下は、データの変遷
input_list は、[ ["ガンド部長", "ブリ事業部長", "9000"], ["モジャコ", "ヤズ係長", "39000"] ]
input_map は順不同で、%{ "イナダ課長" => {"ワラサ部長", 5000}, "ガンド部長" => {"ブリ事業部長", 9000} }
boss_subordinates_map は、%{ "ツバス係長" => ["ワカナ"], "ハマチ課長" => ["ヤズ係長", "ツバス係長"] }
total_power は、[ {"ガンド部長", 81000}, {"モジャコ", 39000} ]
出力
ガンド部長 : 81000
モジャコ : 39000
Elixir で再帰で書いた。多分木の走査か。
末尾再帰になっているかどうかは分からないけど。
>>456 よりも、さらに難しかった
https://paiza.io/projects/oeDtiQEX0oQtWQT7SMKwLA?language=elixir
以下は、データの変遷
input_list は、[ ["ガンド部長", "ブリ事業部長", "9000"], ["モジャコ", "ヤズ係長", "39000"] ]
input_map は順不同で、%{ "イナダ課長" => {"ワラサ部長", 5000}, "ガンド部長" => {"ブリ事業部長", 9000} }
boss_subordinates_map は、%{ "ツバス係長" => ["ワカナ"], "ハマチ課長" => ["ヤズ係長", "ツバス係長"] }
total_power は、[ {"ガンド部長", 81000}, {"モジャコ", 39000} ]
出力
ガンド部長 : 81000
モジャコ : 39000
583デフォルトの名無しさん
2023/03/30(木) 17:53:04.26ID:78T5MT6s お題 板違い
数学板に貼られてた問題
こっちでしょ
298 132人目の素数さん[] 2023/03/30(木) 16:50:53.60 ID:FIHeBSy3
66,203,335,759,2227,3663,7249,80,252,420,882,2770,4618,9126
の数字の和を使って22999をピッタリ作りたい
この時、解は存在するか。
数字は重複して何度でも使用して良いが、使う回数は少なければ少ないほど良い。
18-(使用した数字の合計個数)をこの問題の得点とする
という問題誰かといてください!
数学板に貼られてた問題
こっちでしょ
298 132人目の素数さん[] 2023/03/30(木) 16:50:53.60 ID:FIHeBSy3
66,203,335,759,2227,3663,7249,80,252,420,882,2770,4618,9126
の数字の和を使って22999をピッタリ作りたい
この時、解は存在するか。
数字は重複して何度でも使用して良いが、使う回数は少なければ少ないほど良い。
18-(使用した数字の合計個数)をこの問題の得点とする
という問題誰かといてください!
584デフォルトの名無しさん
2023/03/30(木) 20:36:43.76ID:aEUdLEfy 4618+3663+3663+3663+3663+3663+66
585デフォルトの名無しさん
2023/03/30(木) 20:56:17.32ID:beAio6H7 GPT4がこのスレ知っててワロタ
586デフォルトの名無しさん
2023/04/05(水) 19:08:55.65ID:dFp+KIIO お題 nか2n
長さがn+1, 総和が3nの正の整数の列が入力されます
その連続する部分列で総和がnまたは2nであるものを見つけ、その先頭と最後のindexの組み(indexは1〜n+1とする)を返す関数を作ってください
存在しない時は(-1,-1)を返して下さい
備考 総当たりでも列の長さnに対して計算量はn²オーダーですが、線形オーダーの解があります(四則演算等をO(1)として)
例
[4,1,2,3,3,2]
(3,4)
[3,2,1,3,2,3,4,3,1,4,4]
(6,8)
[3,9,1,1,1,2,5,4,3,5,4,2,1,10,3,4,2,7,1,5,1,2,3,3,1,1,1,1,3,1,2,4,1,1,2,2,11,2,1,4,7,4,6,1,7,1,4,2,1,5,2,5,6,1,5,2,1,1,5,1,1,1,1,5,1,1,3,2,9,6,1,3,4,11,1,1,4,1,2,6,1,2,1,1,3,1,1,1,1,1,2,7,6,2,1,3,9,1,1,2,2]
(36,67)
長さがn+1, 総和が3nの正の整数の列が入力されます
その連続する部分列で総和がnまたは2nであるものを見つけ、その先頭と最後のindexの組み(indexは1〜n+1とする)を返す関数を作ってください
存在しない時は(-1,-1)を返して下さい
備考 総当たりでも列の長さnに対して計算量はn²オーダーですが、線形オーダーの解があります(四則演算等をO(1)として)
例
[4,1,2,3,3,2]
(3,4)
[3,2,1,3,2,3,4,3,1,4,4]
(6,8)
[3,9,1,1,1,2,5,4,3,5,4,2,1,10,3,4,2,7,1,5,1,2,3,3,1,1,1,1,3,1,2,4,1,1,2,2,11,2,1,4,7,4,6,1,7,1,4,2,1,5,2,5,6,1,5,2,1,1,5,1,1,1,1,5,1,1,3,2,9,6,1,3,4,11,1,1,4,1,2,6,1,2,1,1,3,1,1,1,1,1,2,7,6,2,1,3,9,1,1,2,2]
(36,67)
587デフォルトの名無しさん
2023/04/05(水) 20:56:42.55ID:hXUfkOct 簡単すぎる
他の人どうぞ
他の人どうぞ
588デフォルトの名無しさん
2023/04/05(水) 21:33:05.46ID:9gh0I7vV 2^(2^(2^(2^(2^(2^2)))))
を10進数で先頭から100桁を出力する方法は?
を10進数で先頭から100桁を出力する方法は?
589デフォルトの名無しさん
2023/04/05(水) 21:40:43.46ID:hXUfkOct 1桁でも無理
590デフォルトの名無しさん
2023/04/09(日) 16:16:32.45ID:Hy4gOb3Q お題
4つの数字a,b,c,dが複数個入力されます
入力
0, 1, 1, 1
0, 0, 0, 0
1, 0, 0, 1
1, 0, 1, 0
0, 0, 0, 1
0, 0, 1, 1
1, 1, 1, 0
1, 0, 0, 0
1, 1, 1, 1
0, 1, 1, 0
1, 1, 0, 0
1, 0, 1, 1
0, 1, 0, 1
1, 1, 0, 1
0, 0, 1, 0
0, 1, 0, 0
次の条件でソートして出力してください
dの昇順
, bの降順
, cの昇順
, aの降順
出力
1, 1, 0, 0
0, 1, 0, 0
1, 1, 1, 0
0, 1, 1, 0
1, 0, 0, 0
0, 0, 0, 0
1, 0, 1, 0
0, 0, 1, 0
1, 1, 0, 1
0, 1, 0, 1
1, 1, 1, 1
0, 1, 1, 1
1, 0, 0, 1
0, 0, 0, 1
1, 0, 1, 1
0, 0, 1, 1
4つの数字a,b,c,dが複数個入力されます
入力
0, 1, 1, 1
0, 0, 0, 0
1, 0, 0, 1
1, 0, 1, 0
0, 0, 0, 1
0, 0, 1, 1
1, 1, 1, 0
1, 0, 0, 0
1, 1, 1, 1
0, 1, 1, 0
1, 1, 0, 0
1, 0, 1, 1
0, 1, 0, 1
1, 1, 0, 1
0, 0, 1, 0
0, 1, 0, 0
次の条件でソートして出力してください
dの昇順
, bの降順
, cの昇順
, aの降順
出力
1, 1, 0, 0
0, 1, 0, 0
1, 1, 1, 0
0, 1, 1, 0
1, 0, 0, 0
0, 0, 0, 0
1, 0, 1, 0
0, 0, 1, 0
1, 1, 0, 1
0, 1, 0, 1
1, 1, 1, 1
0, 1, 1, 1
1, 0, 0, 1
0, 0, 0, 1
1, 0, 1, 1
0, 0, 1, 1
591デフォルトの名無しさん
2023/04/09(日) 19:47:50.00ID:ha0YD44C592デフォルトの名無しさん
2023/04/09(日) 19:53:31.67ID:fcL4nlHr593デフォルトの名無しさん
2023/04/09(日) 22:47:43.52ID:9X2mZ6aY594デフォルトの名無しさん
2023/04/12(水) 02:41:24.12ID:1sJZVfCp595デフォルトの名無しさん
2023/04/12(水) 12:53:01.20ID:XUdaOkVA お題 何通り?
黒玉 b 個、赤玉 r 個、白玉 w 個が入ってる袋の中から玉を一個ずつ取り出し、取り出した玉を順に横一列に b+r+w 個すべて並べる。
どの黒玉同士も隣り合わず、どの赤玉同士も隣り合わない数を求めよ
例
( b, r, w ) = ( 1,2,2)
→ 18
( b, r, w ) = ( 1,2,3 )
→ 40
( b, r, w ) = ( 3,4,5 )
→ 4326
( b, r, w ) = ( 12,34,56 )
→ 138961718287080638152811314224672
( b, r, w ) = ( 1, 2, 2 )の場合の18通り
["BRWRW","BRWWR","BWRWR","RBRWW","RBWRW","RBWWR","RWBRW","RWBWR","RWRBW","RWRWB","RWWBR","RWWRB","WBRWR","WRBRW","WRBWR","WRWBR","WRWRB","WWRBR"]
黒玉 b 個、赤玉 r 個、白玉 w 個が入ってる袋の中から玉を一個ずつ取り出し、取り出した玉を順に横一列に b+r+w 個すべて並べる。
どの黒玉同士も隣り合わず、どの赤玉同士も隣り合わない数を求めよ
例
( b, r, w ) = ( 1,2,2)
→ 18
( b, r, w ) = ( 1,2,3 )
→ 40
( b, r, w ) = ( 3,4,5 )
→ 4326
( b, r, w ) = ( 12,34,56 )
→ 138961718287080638152811314224672
( b, r, w ) = ( 1, 2, 2 )の場合の18通り
["BRWRW","BRWWR","BWRWR","RBRWW","RBWRW","RBWWR","RWBRW","RWBWR","RWRBW","RWRWB","RWWBR","RWWRB","WBRWR","WRBRW","WRBWR","WRWBR","WRWRB","WWRBR"]
596デフォルトの名無しさん
2023/04/12(水) 14:41:48.33ID:KpWDuFOt こういうの、中学の時に散々やった
597デフォルトの名無しさん
2023/04/13(木) 01:54:06.79ID:o3x890Fi >>595
Kotlin
これは馬鹿正直に並べ替えてるだけなので多くなると結果が中々出ないだけでなくメモリが足りなくなって終わるかも知れない。
https://paiza.io/projects/GIJzZldH4F366cas93uAzg
Kotlin
これは馬鹿正直に並べ替えてるだけなので多くなると結果が中々出ないだけでなくメモリが足りなくなって終わるかも知れない。
https://paiza.io/projects/GIJzZldH4F366cas93uAzg
598デフォルトの名無しさん
2023/04/13(木) 04:34:12.97ID:/t/rlj3C599デフォルトの名無しさん
2023/04/13(木) 17:25:16.88ID:oUlx2lX+ この問題よくある「受験問題計算機で解こう」です
元ネタは今年の東大理系[2]が(b,r,w) = (3,4,5)の場合、もちろん元の問題は「手計算で解け」
https://youtu.be/KAJpzptO5Ws
なのでうまく立式すると(b,r,w) = (3,4,5)程度なら手計算でも解けます、計算機ならこの程度なら全数でも27720通りのうちの4326通りなのでいけます
( b, r, w ) = ( 12,34,56 )あたりだと総当たりするのは難しくなります
ちなみにn = b+r+wについて計算量がO(n²⁺ᵉ)のオーダーの解があります
というか普通に動画のように解いた時の一番素直な解法がO(n²⁺ᵉ)オーダーになります
もっと早いのあるかもしれませんけど
元ネタは今年の東大理系[2]が(b,r,w) = (3,4,5)の場合、もちろん元の問題は「手計算で解け」
https://youtu.be/KAJpzptO5Ws
なのでうまく立式すると(b,r,w) = (3,4,5)程度なら手計算でも解けます、計算機ならこの程度なら全数でも27720通りのうちの4326通りなのでいけます
( b, r, w ) = ( 12,34,56 )あたりだと総当たりするのは難しくなります
ちなみにn = b+r+wについて計算量がO(n²⁺ᵉ)のオーダーの解があります
というか普通に動画のように解いた時の一番素直な解法がO(n²⁺ᵉ)オーダーになります
もっと早いのあるかもしれませんけど
600デフォルトの名無しさん
2023/04/13(木) 18:39:05.80ID:gLPq3xqA 全然違うアプローチで解いた
乗算やCombinationの計算オーダーをどう考えてるか知らないけど、
シンプルな2重ループの中身がCombination、2のn乗、乗算、加減算だけだから、
Combinationを毎回単純に計算してもO(n^4 log(n))
工夫すればO(n^3 log(n))になる
乗算やCombinationの計算オーダーをどう考えてるか知らないけど、
シンプルな2重ループの中身がCombination、2のn乗、乗算、加減算だけだから、
Combinationを毎回単純に計算してもO(n^4 log(n))
工夫すればO(n^3 log(n))になる
601デフォルトの名無しさん
2023/04/14(金) 16:38:26.25ID:KAnE9iae 動画の方法の計算量は高々O(n²⁺ᵉ)なのはすぐ言えます
ここでの計算量は普通の固定長のレジスタしか持たない計算機で計算した場合の計算回数
動画の計算は0<b≦rのときは
Σ[ k:1〜b ]C[ b-1, k-1 ]C[ w+1, k ]C[ k+w+1, w+b+1-r ]
( ただしm<0,m>nのときはC[ m,n ] = 0とする )
で漏れなくダブりなく計算できるというやつ
これの計算量ですが
①ループはb≦nなのでO(n)回
②計算で出てくる数値の大きさは大体指数オーダーなので桁数はO(n¹⁺ᵉ)オーダー
③3つあるCの計算は漸化式使って前で求めた値にそれぞれ掛け算1回、割り算1回で求まるので桁数がO(n¹⁺ᵉ)だからO(n¹⁺ᵉ)オーダーで計算可能、それを掛け算2回して累計 に足すだけなので結局ループ1回の計算量はO(n¹⁺ᵉ)オーダー
④総計算量は結局高々O(n²⁺ᵉ)オーダー
Σの各項は階乗がたくさん出る形なのでBinary splittingとか使ったら早くなる可能性もあるけど、流石に暇つぶしにそこまでやる気は出ない
ここでの計算量は普通の固定長のレジスタしか持たない計算機で計算した場合の計算回数
動画の計算は0<b≦rのときは
Σ[ k:1〜b ]C[ b-1, k-1 ]C[ w+1, k ]C[ k+w+1, w+b+1-r ]
( ただしm<0,m>nのときはC[ m,n ] = 0とする )
で漏れなくダブりなく計算できるというやつ
これの計算量ですが
①ループはb≦nなのでO(n)回
②計算で出てくる数値の大きさは大体指数オーダーなので桁数はO(n¹⁺ᵉ)オーダー
③3つあるCの計算は漸化式使って前で求めた値にそれぞれ掛け算1回、割り算1回で求まるので桁数がO(n¹⁺ᵉ)だからO(n¹⁺ᵉ)オーダーで計算可能、それを掛け算2回して累計 に足すだけなので結局ループ1回の計算量はO(n¹⁺ᵉ)オーダー
④総計算量は結局高々O(n²⁺ᵉ)オーダー
Σの各項は階乗がたくさん出る形なのでBinary splittingとか使ったら早くなる可能性もあるけど、流石に暇つぶしにそこまでやる気は出ない
602デフォルトの名無しさん
2023/04/14(金) 16:42:45.21ID:KAnE9iae Cの但し書き逆 orz
C[ m, n ] = 0 if n < 0 or n > m
でつ
C[ m, n ] = 0 if n < 0 or n > m
でつ
603デフォルトの名無しさん
2023/04/14(金) 18:34:45.76ID:rZCGb039 eはεか
2.718... かと思って、えらい遅いなあと思ってしまった
桁数はn log n 程度、乗除算の定数の桁数がlog nだから、
だいたい n^2 (log n)^2 くらい
2.718... かと思って、えらい遅いなあと思ってしまった
桁数はn log n 程度、乗除算の定数の桁数がlog nだから、
だいたい n^2 (log n)^2 くらい
604デフォルトの名無しさん
2023/04/14(金) 19:30:49.02ID:FnL8j1Jt そうそう、上つきのεが出ないのでeで代用しました
明示しとくべきでした
そもそも計算過程でO(exp(n))オーダーちょいの数扱わざるを得ないしO(n)より真に小さいオーダーのループも無理っぽいのでO(n²⁺ᵉ)より劇的に早くするのは無理ではなかろかと思う今日この頃
明示しとくべきでした
そもそも計算過程でO(exp(n))オーダーちょいの数扱わざるを得ないしO(n)より真に小さいオーダーのループも無理っぽいのでO(n²⁺ᵉ)より劇的に早くするのは無理ではなかろかと思う今日この頃
605デフォルトの名無しさん
2023/04/17(月) 12:15:45.96ID:0+VsNbTw お題 何通り?
黒玉 b 個、赤玉 r 個、白玉 w 個が入ってる袋の中から玉を一個ずつ取り出し、取り出した玉を順に横一列に b+r+w 個すべて並べる。
どの黒玉同士も隣り合わず、どの赤玉同士も隣り合わず、どの白玉同士も隣り合わない数を求めよ
黒玉 b 個、赤玉 r 個、白玉 w 個が入ってる袋の中から玉を一個ずつ取り出し、取り出した玉を順に横一列に b+r+w 個すべて並べる。
どの黒玉同士も隣り合わず、どの赤玉同士も隣り合わず、どの白玉同士も隣り合わない数を求めよ
606デフォルトの名無しさん
2023/04/18(火) 20:26:54.25ID:ZdFu9SM3 オリジナル問題をほんの少し変えただけなんだけど
解き方の解説動画がない問題には回答出来ない人なのかな?
解き方の解説動画がない問題には回答出来ない人なのかな?
607デフォルトの名無しさん
2023/04/19(水) 10:51:18.73ID:vlbinbz4608デフォルトの名無しさん
2023/04/19(水) 23:01:33.08ID:6dkgbtB2 >>605
Kotlin
前回のプログラムを修正して入力の最初の値として 0 または 0 以外を受け付けるようにして、
それが 0 だったら前回と同じ動作(Wは連続して良い)、0以外だったら今回のお題の動作(連続不可)
になるようにした。
https://paiza.io/projects/YHo1f9RRZcJ5qWeKjh4A5A
Kotlin
前回のプログラムを修正して入力の最初の値として 0 または 0 以外を受け付けるようにして、
それが 0 だったら前回と同じ動作(Wは連続して良い)、0以外だったら今回のお題の動作(連続不可)
になるようにした。
https://paiza.io/projects/YHo1f9RRZcJ5qWeKjh4A5A
609デフォルトの名無しさん
2023/04/20(木) 16:05:31.06ID:6lEemSZE >>605
haskell
https://ideone.com/eoDuMc
アルゴリズムは何も変わってないんだけどGHCという一番メジャーなhaskell コンパイラはソースでユニコード文字で処理してるので変数名に漢字とか使えてちょっと面白いんですけど試しr̅みたいな合字やってみたら使えました、まぁそりゃ使えるだろって話なんですけど
ちょっとコードの見た目が全然違って楽しい
haskell
https://ideone.com/eoDuMc
アルゴリズムは何も変わってないんだけどGHCという一番メジャーなhaskell コンパイラはソースでユニコード文字で処理してるので変数名に漢字とか使えてちょっと面白いんですけど試しr̅みたいな合字やってみたら使えました、まぁそりゃ使えるだろって話なんですけど
ちょっとコードの見た目が全然違って楽しい
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【中国外務省】日中関係悪化は高市氏に責任と名指しで非難… ★5 [BFU★]
- 【インバウンド】中国からの“渡航自粛”…ツアー1000人分の直前キャンセル「キャンセル料は免除してくれ」 ことしいっぱいキャンセルに [1ゲットロボ★]
- XやChatGPTで広範囲の通信障害 投稿や閲覧できず [蚤の市★]
- 「国民の憤りを引き起こした」中国側“高市首相発言の撤回改めて要求” [どどん★]
- 【サッカー】日本代表、ボリビアに3発快勝 森保監督通算100試合目を飾る…鎌田、町野、中村がゴール [久太郎★]
- 【ローソン】ロゴの「L」で誤解生んだコーヒーカップ、デザイン変更へ 在庫使い切る3か月後にリニューアル [ぐれ★]
- 「遺体、安倍、会いたい」👈逆から読んでみて [175344491]
- 【悲報】SANA、発言撤回拒否 [769931615]
- ジャーナリストがテレビで解説「台湾問題は高市総理から言ったのではなく、立憲民主が日本の対応可能能力を暴こうとしたから」 [359572271]
- 【悲報】トランプ聖帝「高市…さん…でしたっけ?」 [878970802]
- 【悲報】タリバン、外務省のトップに土下座させる始末 [974680522]
- 山上、死刑回避し減刑か 山上母の供述で一気に酌量ムードへ [804169411]
