X



プログラミングのお題スレ Part19
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001デフォルトの名無しさん
垢版 |
2020/11/30(月) 00:04:05.21ID:TF2Czp0y
プログラミングのお題スレです。

【出題と回答例】
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/

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

※前スレ
プログラミングのお題スレ Part18
https://mevius.5ch.net/test/read.cgi/tech/1594702426/
0851デフォルトの名無しさん
垢版 |
2021/05/19(水) 11:00:46.78ID:4kVeu0Qb
>>776
携帯の電話番号というのを見落としていた。で、何が携帯番号かの資料は何処にあるのか?
0853Mb
垢版 |
2021/05/19(水) 20:17:53.26ID:gE1os4Gp
>>678
> 仮名を清音に変換してから比較する
うん、発想はいいが、いまひとつ。
清音のキーと「長音」「濁音」「拗音」とかのキーをそれぞれ生成して、
それをどうにかして整列キーを生成して文字列順の整列ルーチンに
喰わせる、ということを考えたら完璧。
0855Mb
垢版 |
2021/05/19(水) 20:24:02.49ID:gE1os4Gp
>>801
激しく同意する
0856デフォルトの名無しさん
垢版 |
2021/05/19(水) 21:05:39.99ID:gAtlXGbl
お題: 複数ある改行を1つの改行にまとめる関数join_newlinesを作成せよ

s = 'abc\ndef\n\nghi\n\n\n'
s = join_newlines(s)
print(s)
# 'abc\ndef\nghi\n'
0859蟻人間 ◆T6xkBnTXz7B0
垢版 |
2021/05/19(水) 21:27:45.26ID:Re+YCmzE
>>854
小学生の頃、かくれんぼしてたの覚えてるか? 今でも覚えてるからな。
0867デフォルトの名無しさん
垢版 |
2021/05/23(日) 06:54:55.26ID:g5kAwhGI
>>856 Python
def join_newlines(x): return "\n".join(x.split())
0868デフォルトの名無しさん
垢版 |
2021/05/23(日) 13:13:24.19ID:PEJa2qxX
>>867
これで文字列の最初に空行があったり、文字列の最後に空行が続いたというような場合の復元ができるものですか?
0869デフォルトの名無しさん
垢版 |
2021/05/23(日) 13:46:27.14ID:P4UGjjTl
まーた後だしジャンケンか
シビれるなぁ
0871デフォルトの名無しさん
垢版 |
2021/05/23(日) 20:53:25.70ID:g5kAwhGI
>>868
確かにおかしいですね
一応直してみましたがあんまりすっきりとはいきませんでした
>>856 Python

def join_newlines(x): return "\n".join(("@"+x+"@").split())[1:-1]
0872デフォルトの名無しさん
垢版 |
2021/06/01(火) 23:19:09.17ID:FFj30Ig5
数学板より

お題 ヘビサイド関数で近似

問題は長いのでリンク先

分からない問題はここに書いてね 467
https://rio2016.5ch.net/test/read.cgi/math/1619884204/439-440

出力して欲しい3つの数値の例
上のリンクの下の440の方

【具体例1】
N = 3
l r s w
1 3 6 1
0 8 4 1
5 7 2 1

a=4, b1=6, b2=2 としたとき、F(a,b1,b2)=0 になり、これが最小値です。
a=3, b1=6, b2=2 としたとき、F(a,b1,b2)=4 になり、最小値ではありません。
a=4, b1=5, b2=3 としたとき、F(a,b1,b2)=4 になり、これも最小値ではありません。

【具体例2】
N = 4
l r s w
0 2 4 3
1 5 6 9
4 10 1 2
8 9 7 10

a=0.8, b1=1, b2=6 としたとき、F(a,b1,b2)=70 になります。
0873デフォルトの名無しさん
垢版 |
2021/06/02(水) 01:03:39.85ID:yNlOa9BD
>>872
ここは数学板じゃないので、
「この問題を解くと、どういう用途に役立つのか」
ということを聞いておきたいと思います。
0877デフォルトの名無しさん
垢版 |
2021/06/04(金) 03:49:13.95ID:xd2yEhgg
お題:teshimatta関数関数を作れ
入力は1文字以上を保証される

teshimatta("起きた")
> "起きてしまった"

teshimatta("やった")
> "やってしまった"

teshimatta("あ")
> "ってしまっあ"

teshimatta("古畑任三郎")
> "古畑任三ってしまっ郎"
0881デフォルトの名無しさん
垢版 |
2021/06/05(土) 03:23:53.65ID:lg0pCfQ9
>>877
Kotlin 及び Kotlin script

以下は kotlinc コマンドで REPL で動かした時のコピペ。
>>> はプロンプト。1行目が関数定義。2行目から使用している。

>>> fun teshimatta(s: CharSequence): CharSequence = if (s.isNotEmpty()) StringBuilder(s).insert(s.lastIndex, "てしまっ") else s
>>> teshimatta("起きた")
res1: kotlin.CharSequence = 起きてしまった
>>> teshimatta("やった")
res2: kotlin.CharSequence = やってしまった
>>> teshimatta("あ")
res3: kotlin.CharSequence = てしまっあ
>>> teshimatta("古畑任三郎")
res4: kotlin.CharSequence = 古畑任三てしまっ郎
>>>
0882デフォルトの名無しさん
垢版 |
2021/06/05(土) 04:51:26.61ID:oLy6snUx
>>877 Python
def teshimatta(s): return s[:-1] + "てしまっ" + s[-1]
0883デフォルトの名無しさん
垢版 |
2021/06/06(日) 01:58:33.61ID:9Hxa2Z/w
お題:一筆書き
0:床、1:穴、2:スタート地点
からなる数字列が与えられる。スタート地点から縦または横に1マスずつ移動し、すべての床を通過することとする。
穴や外周は通過できない。床は一度通過すると穴となり二度目は通過できない。
すべての床を通過できれば「OK」、できなければ「NG」と表示せよ。

【例1】OK
0000
0210
0000
0100

【例2】NG
0000
0200
0010
0000

【例3】OK
000000
210000
000100
000001
000000

【例4】NG
000000
210000
000100
000000
000001
0884デフォルトの名無しさん
垢版 |
2021/06/06(日) 10:18:31.19ID:W7O34OA1
>>883
まさかこれ頂点の次数を数えるだけで終わるのか?
0886デフォルトの名無しさん
垢版 |
2021/06/06(日) 11:03:23.03ID:9mmqAG88
3次元使えばウルトラC
0891デフォルトの名無しさん
垢版 |
2021/06/09(水) 09:58:07.70ID:yucbsR+t
NP完全らしいから事実上考えても無駄で総当たりで検索するしかなさそうやね
0892デフォルトの名無しさん
垢版 |
2021/06/09(水) 11:44:53.31ID:7ehWzkTR
>>883 Prolog

'お題:一筆書き
0:床、1:穴、2:スタート地点
からなる数字列が与えられる。スタート地点から縦または横に1マスずつ移動し、すべての床を通過することと
する。
穴や外周は通過できない。床は一度通過すると穴となり二度目は通過できない。
すべての床を通過できれば「OK」、できなければ「NG」と表示せよ。'(_行,_列,L) :- nth1(_スタート,_数字列,2), 選択(_行,_列,_スタート,_数字列).

選択(_行,_列,_n,_数字列) :- \+(member(0,_数字列)), write('OK\n'),!.
選択(_行,_列,_n,_数字列) :- 隣接(_行,_列,_n,_n_2), nth1(_n_2,_数字列,0), '_n番目を1に変える'(1,_n_2,_数字列,_数字列_2), 選択(_行,_列,_n_2,_数字列_2).
選択(_,_,_,_) :- write('NG\n').

'_n番目を1に変える'(_n,_n,[_|R],[1|R]) :- !.
'_n番目を1に変える'(M,_n,[_現在位置|R1],[_現在位置|R2]) :- succ(M,N), '_n番目を1に変える'(N,_n,R1,R2).

隣接(_行,_列,_現在位置,_隣接) :- _隣接 is _現在位置 - 1, \+(0 is _隣接 mod _列).
隣接(_行,_列,_現在位置,_隣接) :- _隣接 is _現在位置 + 1, \+(1 is _隣接 mod _列).
隣接(_行,_列,_現在位置,_隣接) :- _隣接 is _現在位置 - _列, _隣接 > 0.
隣接(_行,_列,_現在位置,_隣接) :- _隣接 is _現在位置 + _列, _隣接 =< _行 * _列.
0893デフォルトの名無しさん
垢版 |
2021/06/09(水) 11:48:43.27ID:7ehWzkTR
>>884 すみません。一箇所間違えました。

Prolog

'お題:一筆書き
0:床、1:穴、2:スタート地点
からなる数字列が与えられる。スタート地点から縦または横に1マスずつ移動し、すべての床を通過することと
する。
穴や外周は通過できない。床は一度通過すると穴となり二度目は通過できない。
すべての床を通過できれば「OK」、できなければ「NG」と表示せよ。'(_行,_列,_数字列) :- nth1(_スタート,_数字列,2), 選択(_行,_列,_スタート,_数字列).

選択(_行,_列,_n,_数字列) :- \+(member(0,_数字列)), write('OK\n'),!.
選択(_行,_列,_n,_数字列) :- 隣接(_行,_列,_n,_n_2), nth1(_n_2,_数字列,0), '_n番目を1に変える'(1,_n_2,_数字列,_数字列_2), 選択(_行,_列,_n_2,_数字列_2).
選択(_,_,_,_) :- write('NG\n').

'_n番目を1に変える'(_n,_n,[_|R],[1|R]) :- !.
'_n番目を1に変える'(M,_n,[_現在位置|R1],[_現在位置|R2]) :- succ(M,N), '_n番目を1に変える'(N,_n,R1,R2).

隣接(_行,_列,_現在位置,_隣接) :- _隣接 is _現在位置 - 1, \+(0 is _隣接 mod _列).
隣接(_行,_列,_現在位置,_隣接) :- _隣接 is _現在位置 + 1, \+(1 is _隣接 mod _列).
隣接(_行,_列,_現在位置,_隣接) :- _隣接 is _現在位置 - _列, _隣接 > 0.
隣接(_行,_列,_現在位置,_隣接) :- _隣接 is _現在位置 + _列, _隣接 =< _行 * _列.
0895デフォルトの名無しさん
垢版 |
2021/06/09(水) 18:59:44.38ID:5vxiK06u
お題:今日は第何曜日か計算して現在の日時を以下のように出力する
2021/06/09/第2水曜日/19:21/

ヒント
今日の日にちを7で割る 例:9 / 7
少数点以下は切り捨て
1を足す
カレンダーを見ながら計算すると分かりやすい
0896デフォルトの名無しさん
垢版 |
2021/06/09(水) 19:53:11.25ID:xvC+FdYf
>>895 Ruby

puts Time.now.then{|t| t.strftime('%Y/%m/%d/第%%d%%s曜日/%R') % [(t.day + 6) / 7, %w[日 月 火 水 木 金 土][t.wday]]}

# => 2021/06/09/第2水曜日/19:52
0898デフォルトの名無しさん
垢版 |
2021/06/09(水) 22:04:39.42ID:9AlSa9IZ
>>897
>>896のほうが簡単なのでヒント変更
今日の日にちに6を足して7で割る 例:(9+6) / 7
少数点以下は切り捨て
カレンダーを見ながら計算すると分かりやすい
0906デフォルトの名無しさん
垢版 |
2021/06/09(水) 22:19:03.01ID:YKvIUGd6
>>905
証拠がないんだったら宿題じゃないよね
ここはお題スレだから

どこの学校の何先生が出した宿題なんですかー?w
0907デフォルトの名無しさん
垢版 |
2021/06/09(水) 22:19:44.10ID:YKvIUGd6
さっさと証拠出せやおら、だせねえんだったら発言撤回して謝罪しろ大人なめんなよ
0908デフォルトの名無しさん
垢版 |
2021/06/09(水) 22:20:34.15ID:YKvIUGd6
自分の発言には責任持とうね、証拠早くだせ、言いがかりつけてただですむと思うなよ
0911デフォルトの名無しさん
垢版 |
2021/06/09(水) 22:26:06.61ID:YKvIUGd6
>>910
お前が死んでください
神様お願いします>>910の脳天に雷を落として黒焦げにしてください
それをミキサーでくだいて花壇に撒くととてもきれいなお花が咲きます
よろしくお願いします
0917デフォルトの名無しさん
垢版 |
2021/06/09(水) 22:29:52.94ID:jvfDlPRh
>>913
第何曜日か計算するのに日付をそのまま7で割るとかいう発想しかできない糞馬鹿のお前に言われても草しか生えないんだが
0919デフォルトの名無しさん
垢版 |
2021/06/09(水) 22:30:45.17ID:QHAeufkP
宿題は宿題スレがあるのでそちらへ。
宿題は宿題スレがあるのでそちらへ。
宿題は宿題スレがあるのでそちらへ。
0922デフォルトの名無しさん
垢版 |
2021/06/09(水) 22:34:34.57ID:jvfDlPRh
駒場で公理的集合論研究してる俺にガチ解説して見ろやゴミムシが
お前みたいな雑魚がこの世に生きてるのが一番許せないわ
0923デフォルトの名無しさん
垢版 |
2021/06/09(水) 22:35:12.11ID:YKvIUGd6
>>922
1月を30日とするだろ
1〜7 は第1回目の曜日
8〜14 は第2回目の曜日
15〜21 は第3回目の曜日
21〜30 は第4回目の曜日
になる

つまり
1〜7を1に変換する式を考えれば良い
0927デフォルトの名無しさん
垢版 |
2021/06/09(水) 22:38:00.52ID:YKvIUGd6
ちなみに集合論は数学の最底辺、集合論を研究してる数学者は文学科と呼ばれてる
0934デフォルトの名無しさん
垢版 |
2021/06/09(水) 22:51:39.42ID:YKvIUGd6
>>932
あれあれw君回答してないよね、回答の提出がない人は理解できてないので、すぐに回答を提出するように
0936デフォルトの名無しさん
垢版 |
2021/06/09(水) 22:51:51.24ID:k5a+Oahd
> ヒント
> 今日の日にちを7で割る 例:9 / 7
> 少数点以下は切り捨て
> 1を足す

馬鹿過ぎて草も生えない
ヒント とかドヤって思いっきり間違えてるとこが痛々しすぎる

> カレンダーを見ながら計算すると分かりやすい

更に駄目押し
分かりやすいとか言ってるのにコレかよ

真面目に頭の検査してもらった方が良いんじゃねーか?
頭に寄生虫とかウジャウジャ湧いてんじゃねーの?
冗談でも脅しでも無く本当にあるからな
更にキレっぷり見るに火病の疑いもある
死にたくなければマジで脳の検査してこい
0938デフォルトの名無しさん
垢版 |
2021/06/09(水) 22:55:04.60ID:YKvIUGd6
>>935
だったらお前はお母さんの子宮からやり直せ
産道を通ってお母さんの膣の臭いを脳味噌に焼き付けてから
歩む人生こそいまのお前にふさわしい
0941デフォルトの名無しさん
垢版 |
2021/06/09(水) 23:00:28.30ID:YKvIUGd6
そうだ、お前らコロナのワクチンの注射頭に刺してくださいって言ってみれば?
0942デフォルトの名無しさん
垢版 |
2021/06/09(水) 23:02:49.67ID:k5a+Oahd
ガチガイジかどうかまでは分からんが
少なくともガイジ扱いされた事のある人の反応ですね
自覚があるから草で誤魔化す
認めたく無いのだろうけど素直に診療受けた方が良いよ
病種によっては投薬や訓練で治ったり緩和出来るものもあるからさ
0945デフォルトの名無しさん
垢版 |
2021/06/09(水) 23:06:41.76ID:ZOi1NsTl
完全に間違ったことを言ってしまったというのに
そのことを指摘されて相手をなお罵倒するというのは
まともな頭脳の持ち主がするところではないわな

しかも自分の正当性を一切主張できていないというのがお笑いポイント
0947デフォルトの名無しさん
垢版 |
2021/06/09(水) 23:16:45.29ID:YKvIUGd6
回答してない分際で何の分析してんだよ

YouTubeでもいるよな、松本はわかったうえであえて
こうすることで笑いにしてるみたいな分析をコメントに書くやつ

そしてそれにGoodするやつな、あいつらは本当にアホですわ

もっとアホなのは令和3年に見てる人ーとアンケート取るやつな
0951デフォルトの名無しさん
垢版 |
2021/06/09(水) 23:22:41.71ID:YKvIUGd6
>>949
で、君のお題に対する回答コードはどれだね? おん?
他人のコードに便乗するのは認めないよ
レス数が950を超えています。1000を超えると書き込みができなくなります。

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