[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 06/28 06:35 / Filesize : 332 KB / Number-of Response : 1028
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

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



1 名前:デフォルトの名無しさん [2019/02/03(日) 11:21:53.20 ID:72eosYJ+.net]
プログラミングのお題スレです。

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

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

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

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

※前スレ
https://mevius.2ch.net/test/read.cgi/tech/1538096947/

160 名前: mailto:sage [2019/02/12(火) 22:13:32.20 ID:afakhEje.net]
>>132
一緒ですよ

161 名前:デフォルトの名無しさん [2019/02/13(水) 05:57:47.09 ID:ttYQgqMy.net]
お題
print(a)
のように変数の宣言や代入なしで
使用するとどうなろか

162 名前:デフォルトの名無しさん mailto:sage [2019/02/13(水) 07:02:03.53 ID:Xe5jZGpg.net]
>>156
日本語でok

163 名前:デフォルトの名無しさん mailto:sage [2019/02/13(水) 07:39:48.48 ID:aN9MpGEF.net]
EXCELシート名が1文字のシートが数シートある。これをwindows10でVB6を使いデータベースで読み取ってみせよ。

164 名前:デフォルトの名無しさん mailto:sage [2019/02/13(水) 08:26:40.04 ID:ds2YQTN5.net]
>>154
だから>>134で4行目間違えたって書いてあるだろ
よく読め

165 名前:デフォルトの名無しさん mailto:sage [2019/02/13(水) 08:38:42.75 ID:ds2YQTN5.net]
>>155
AならばBと
Aが真ならばBが真
が同じならば
AならばBと
Aが偽ならばBが真
と同じ
AならばBと
Aが偽ならばBが偽と
同じ
ということになるぞ?
これは同じじゃないから君の言ってることは
間違ってるということだな

166 名前:デフォルトの名無しさん mailto:sage [2019/02/13(水) 08:43:59.85 ID:ds2YQTN5.net]
よく考えたらやっぱり同じだな

167 名前:デフォルトの名無しさん mailto:sage [2019/02/13(水) 09:12:06.89 ID:B8qJWD6e.net]
>>160
糞コテの肩は持ちたくないがなんだこのくっそみたいな日本語は

「AならばB」と「Aが真ならばBが真」が同値ならば
「AならばB」と「Aが偽ならばBが真」と「Aが偽ならばBが偽」が同値
って言いたいのか?

同値になるわけねえだろ
ABの真偽は4パターンしかねえんだから、いくらお前が無能でも全4パターンくらい考えてからレスしろよ

大体、任意の命題Pに対して「P」と「Pは真である」が同値にならないケースってなんだよ
馬鹿も休み休み言えよホント

168 名前:デフォルトの名無しさん mailto:sage [2019/02/13(水) 11:03:26.26 ID:ds2YQTN5.net]
>>162
>>161に「よく考えたら同じだな」って書いてあるじゃん



169 名前:デフォルトの名無しさん mailto:sage [2019/02/13(水) 11:23:09.04 ID:B8qJWD6e.net]
「よく考えたらやっぱり同じだな」だけでは何と何が同じだと思ったのかわからない
悪びれた様子もなく前後の文脈からも推論不可
とてもまともとは思えない

170 名前:デフォルトの名無しさん mailto:sage [2019/02/13(水) 11:31:27.70 ID:ds2YQTN5.net]
>>164
わかりにくくてごめんね

171 名前:デフォルトの名無しさん [2019/02/13(水) 11:36:53.06 ID:ttYQgqMy.net]
>>156 Lua
print(a)
実行結果
nil

172 名前:デフォルトの名無しさん mailto:sage [2019/02/13(水) 11:59:11.28 ID:kZE3tAhm.net]
言語とか使えるライブラリとか制限しないと
意味が無くなっている希ガス
言語指定した場合でも特定の文法を使っては
ならないとか制限加えると面白いものが
出来るような,,,

173 名前:デフォルトの名無しさん mailto:sage [2019/02/13(水) 12:32:49.57 ID:B8qJWD6e.net]
>>165
お前の場合、わかりにくいんじゃなくてわかりえないの
日本語もおかしいし

174 名前:デフォルトの名無しさん mailto:sage [2019/02/13(水) 12:36:48.35 ID:ds2YQTN5.net]
>>168
俺の文が不親切すぎたよな
ごめんねごめんねー

175 名前:デフォルトの名無しさん mailto:sage [2019/02/13(水) 13:30:26.24 ID:0cDEleYh.net]
>>167 制限なんかしなくてよいよ。 ライブラリが嫌いならあまりライブラリが使えそうにないお題を出せばよいだけだし。
例えば正規表現ライブラリなんて装備されていない言語は殆どないだろうし、標準装備している言語とそうでない言語で不公平になるし。
使えるものはすべて駆使して解けばよいだろ。

176 名前:デフォルトの名無しさん mailto:sage [2019/02/13(水) 15:40:07.94 ID:0cDEleYh.net]
>>113 python
if A: B=A

結果
Aが True の時 B(結果)= True
Aが False の時 B(結果)= None (変わらず)
Aが False の時 B(結果)= False (変わらず)
Aが False の時 B(結果)= True (変わらず)

177 名前:デフォルトの名無しさん [2019/02/13(水) 18:13:27.57 ID:ttYQgqMy.net]
>>113 Lua
functio naraba(A, B)
if A == B then
return true
else
return B
end
end

178 名前:デフォルトの名無しさん mailto:sage [2019/02/13(水) 18:26:24.24 ID:J6DmHrNb.net]
>>172 それちゃうよ。
A が False の時 B がFalseに限定される



179 名前:デフォルトの名無しさん mailto:sage [2019/02/13(水) 18:27:28.53 ID:J6DmHrNb.net]
と言うか何を返してるんだろ。

180 名前:デフォルトの名無しさん [2019/02/13(水) 19:13:38.60 ID:ayAZ2qec.net]
>>156
C言語のようなコンパイルする言語だとだいたいはコンパイル時にエラーになって実行不能だろうなあ(そうでない言語もあるかも知れないが)。
更に print がない言語もある。少なくともCの標準的なライブラリにはない。printf()やputs()のようなものはある。
なので変数宣言すればコンパイルは通るが今度はリンクで関数が見つからなくてエラーになりこれまた実行不能。

まあでも言語や環境で起こることは違って来るので答えは沢山出てくるかも知れない。(またはほとんど相手にされないかだ)。

181 名前:デフォルトの名無しさん mailto:sage [2019/02/13(水) 21:01:39.06 ID:7GscGWa9.net]
お題
長方形のサイズが指定された時、その長方形に敷きつめられるパターン全て列挙
回転もおkかは好きに定めていい
例: 2 3
#

###

#
#

###
###

182 名前:デフォルトの名無しさん mailto:sage [2019/02/13(水) 21:10:56.19 ID:9nMuJOxB.net]
回転もOKの場合は↓も入るってことかの?

##
#

183 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 00:46:56.24 ID:QGThOkDI.net]
>>176 なんか図が良くわからないな。

2 x 3 なら、そのパーツは, / は空きだとすると


*//
***

/**
――-
*//
*//

/**
/**
―――
*//
**/

/**
//*
――
***
***
――-
みたいな感じかな。パーツの回転を許す許さないは自由という事。
3 x 3 の時は斜めのパーツも許すんだろうね。
*//
/*/
//*
これが一つのパーツ?

184 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 00:50:00.40 ID:QGThOkDI.net]
>>178 斜めのパーツは現実的には作れないし、組み合わせが膨大になるから、許さない方が良いのかも。
縦、横に繋がっていないパーツは除外かな。

185 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 01:06:21.81 ID:QGThOkDI.net]
これはかなり難しいお題になるんじゃないの。
パーツを少なくするためには、穴開きパーツも許さない方が良さそうだし。

パーツは、空白は 0 基本図形は 1として表した方が良いのかな。 2 x 3 なら

100
110

011
001
とか

186 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 01:48:31.30 ID:anuIpNjB.net]
>>178
同じ形のパーツだけで指定の長方形に敷き詰められる物を探すんじゃろ

187 名前:一尾圭吾 mailto:sage [2019/02/14(木) 02:36:27.51 ID:ODX5iexG.net]
プログラミング超初心者です
自動で2ちゃんにコピペを書き込むようになりたいんですがそれってかなりレベル高いスキルですかね?

188 名前:一尾圭吾 mailto:sage [2019/02/14(木) 02:39:09.40 ID:ODX5iexG.net]
>>10うわぁww眉毛剃っとるwwwwww
流石やな....ヤクザやんw



189 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 05:27:21.29 ID:6Gfgc+2u.net]
>>150
三値論理

190 名前:デフォルトの名無しさん [2019/02/14(木) 06:52:51.05 ID:J1vF692V.net]
論理プログラムのスレはありませんか?

191 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 08:13:17.60 ID:anuIpNjB.net]
>>176
回転なしなら縦の長さの因数と横の長さの因数それぞれの組み合わせの四角を列挙すればええんよな?
回転ありだとどうすればええんじゃろ

192 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 08:52:55.94 ID:QGThOkDI.net]
>>176 必要なパーツの種類と個数を出せば良いんだろう。
回転させて使おうがどうしようが自由。

193 名前:デフォルトの名無しさん [2019/02/14(木) 09:41:08.57 ID:9tQDIG7c.net]
>>178
パターン全てって書いてあるから単に 2^ドット数 だと思ってたんだが、人間が見た時に何らかの意味がありそうなパターンって事なの?
しかし何に意味がありそうと感じるかは主観の問題だからここでのお題としては適切ではないよね。

194 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 10:37:38.67 ID:zlobX1y6.net]
>>188
アホかお前

195 名前:デフォルトの名無しさん [2019/02/14(木) 11:47:38.28 ID:E3VWek4W.net]
>>156 R
cat(a)

Error in cat(a) : object 'a' not found
Execution halted

196 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 11:52:48.67 ID:rq9LAi9f.net]
パーツの対称性を見るくらいしかなさそうだけどなぁ

90度回転で不変ならパーツ自体が正方形の場合しか充填し得ないし180度回転で不変なら長方形しかない
問題は対称性なしの場合で, 回転で得られる4通りの図形の組み合わせで少なくとも適当な長方形が作れる必要がある。

197 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 12:23:18.44 ID:4UGy3YJR.net]
出題者です、同じ1種類のパーツのみで敷き詰めるのを意図してた
回転なしは因数でおk、有りは一応解法は浮かんだが証明詰めきれなかったので好きに定めて良いって書いた

198 名前:デフォルトの名無しさん [2019/02/14(木) 12:26:41.67 ID:9tQDIG7c.net]
>>189
じゃあどう解釈すれば良いのか?



199 名前:デフォルトの名無しさん [2019/02/14(木) 12:30:54.48 ID:9tQDIG7c.net]
>>192
相変わらず問題がよくわからんよ。

200 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 12:50:46.70 ID:QGThOkDI.net]
>>192 2x3 の時は、1種類のパーツのみで埋めるとすると

111
111
の時は 111 x2個
1,1,1
1,1,1
の時は 1,1(2段) x3個

11,1
1,11
の時は 110,100(2段) 2個とするのか
11 が 2個と 1 が2個 は2種類のパーツだからダメ?

201 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 13:04:00.12 ID:QGThOkDI.net]
>>195 90度回転を認めると、11が、3個で良いね。

回転なしなら、111 2個と 1が6個
1
1
2段のパーツが3個
の3種類が解?

202 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 13:09:44.77 ID:zlobX1y6.net]
上でもう出てんだろ
回転なしなら辺の約数の組み合わせで全部だっつーの

203 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 13:44:03.89 ID:icHgtaXf.net]
ヤング図形考えて終わりじゃねえのコレ

204 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 13:56:13.92 ID:iDdALKjs.net]
abcd
badc

abab
cdcd

aaba
babb

abbb
aaab

同じパターンで埋めるのって色々できそうだけどこういうの全部いいの?

205 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 18:55:26.99 ID:PxTMiczy.net]
>>199 それ何種類も使ってるじゃん。
最低何れかの縦横が連続していないとダメだろ。 パズソーのピースじゃないの?
先ずは2x3で1種類のパーツのみで探せという問題の回答を決めてほしい。

206 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 19:04:40.56 ID:iDdALKjs.net]
いや全部一種類だよ
マスがくっついてないだけで
連続してるとは書かれてなかったし

207 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 19:56:54.06 ID:IkVUbwNW.net]
お題を正しく理解できてない模様 >>176をもう1度確認
1つ目の#は6個、2つ目の###は2個、
3つ目の#    4つ目の###
   #は3個、    ###は1個で2行3列が全て埋まります

208 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 20:35:35.28 ID:0TijawxO.net]
>>210
例えば、 最初の基本バーツは何? どうしてこれが1種類なのかな?

abcd
badc

-----|



209 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 20:45:00.72 ID:0TijawxO.net]
>>202 全く理解できない。
>>176 はどうして一つ目が6個なのかな? 1個しかないじゃん?
一つ目って何? 二つ目って何?

https://i.imgur.com/GzvMfWg.jpg

自分が今見てるのは、iPhone BB2C

210 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 20:54:16.99 ID:RyxU72PZ.net]
回答の良し悪しだけじゃない、良問悪問ってあるよね…

211 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 21:20:53.44 ID:IkVUbwNW.net]
>>204

1つ目の #   は6個で2行3列が全て埋まります

###
###


2つ目の ### は2個で2行3列が全て埋まります

###
###


3つ目の #
     #   は3個で2行3列が全て埋まります

###
###


4つ目の ###
     ### は1個で2行3列が全て埋まります

###
###

212 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 01:14:00.78 ID:Ap6BYDwO.net]
>>203
回転を許す立場なら
@_
_@
って言うパーツ一種類だけからできてんじゃん
頭大丈夫か?

213 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 01:38:17.60 ID:nnYj1Xkq.net]
>>207 b と d が同じに見えるそっちこそ頭大丈夫か?

abcd
badc

これのどこが、
--@
@―

なんだよ。

214 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 02:40:42.39 ID:YMyZWZCa.net]
90度回転ありなら
#     #   #     #
 # と #  と  # と # 
で敷きつめられる(=全て埋まる)という意味だろうけど
>>179に抵触するので、これは無しでしょ

215 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 06:13:53.42 ID:hXoOelh0.net]
>>208
回転を許すっつってんだろ氏ねよ糞無能が
@_
_@
を90度回転させたら
_@
@_
だろうが
市ね糞野郎

216 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 08:54:29.71 ID:nnYj1Xkq.net]
>>209 ようやくわかった。
a_
_a
_b
b_
などと並んでるものは、全て同じパーツとみなすという意味か。

>>176 のお題をよく見ると、2 x 3 の正解の回答が書かれてる。 斜めは許していないからダメだろ。
また、回転も許していない。
回転を許すなら

■ ■
というパーツも入るがそれは除外されてるから、回転も無しだ。

217 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 10:38:13.03 ID:NxGjA/1R.net]
>>199のような飛び飛びのパターンまで含めると5x5くらいのサイズなら解けそうでも
10x10くらいの大きさになるとほぼ解けなくなるか?

218 名前:デフォルトの名無しさん mailto:sage [2 ]
[ここ壊れてます]



219 名前:019/02/15(金) 11:04:50.72 ID:bh7l703i.net mailto: ...
d0<-a
a->b
b->c
c->d
c'<-d
b'<-c'
a<-b'
d->a2
d<-a2
a2->b2
....
に対して
任意の英数字から初めて右向きの矢印をnこ進んだ英数字を一瞬で割り出す簡単な計算方法を教えろ
左向きの矢印のときも答えろ
ここで英数字には好きな整数の値を対応させろ
[]
[ここ壊れてます]

220 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 11:10:32.09 ID:bh7l703i.net]
自己解決しました
この問題には答えなくていいです

221 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 11:21:16.25 ID:bh7l703i.net]
新問題
...
g0<-a
a->b
b->c
c->d
c'<-d
b'<-c'
a<-b'
d->e
e->f
f->g
f'<-g
e'<-f'
g->a1
g<-a1
a1->b1
....
に対して
任意の英数字から初めて右向きの矢印をnこ進んだ英数字を一瞬で割り出す簡単な計算方法を教えろ
左向きの矢印のときも教えろ
ここで英数字には好きな整数の値を対応させろ

222 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 11:22:43.57 ID:bh7l703i.net]
訂正
d<-e'
追加で

223 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 11:45:59.15 ID:446NzcaO.net]
日本語で書けや

224 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 11:55:27.68 ID:bh7l703i.net]
自己解決しました
この問題には答えなくていいです
>>217
これからは英語で書くので許して下さい

225 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 12:34:22.87 ID:fQG3bb7R.net]
自己解決ってどういうこと?
宿題貼ってるの?

226 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 12:41:19.85 ID:bh7l703i.net]
俺はキチガイだから相手にしないほうが良い

227 名前:デフォルトの名無しさん [2019/02/15(金) 12:43:47.27 ID:JRF4Gyvi.net]
わけのわからん問題が続くなあ・・・

228 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 17:27:20.42 ID:DyMjpctN.net]
>>211
> 回転もおkかは好きに定めていい



229 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 02:08:44.97 ID:3MiMTZ5E.net]
しかしこの問題は回転を考えないと、曲がったパーツは不可能だね。
かなり単純化される。

230 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 02:11:07.89 ID:vjYPWj7f.net]
なんかスレが新しくなってから湧いてきたPythonのクソみたいなコード連投してる日本語がめちゃくちゃのやつうざい

231 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 02:16:11.76 ID:bRo2S9Sl.net]
前スレから居るんですよそいつね

232 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 02:35:08.75 ID:zutWNq0P.net]
2行3列で回転無しなら以下の4つが答え

#

###

#
#

###
###

回転ありなら更に以下の2つも

##
#

#
##

233 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 07:00:03.49 ID:wpb3vJTT.net]
>>226
> ##
> #
>
> #
> ##
この二つは90度回転した同じものやが

234 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 09:56:41.50 ID:3oducOde.net]
煽りではなく本当に発達障害またはそれに準ずる知的ボーダーを疑うレベルで頭悪いな

235 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 10:48:56.77 ID:3MiMTZ5E.net]
>>228 煽りじゃん。 プログラムを出してくれた方が良い。

236 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 12:54:53.60 ID:8ZVYBrON.net]
お題:バブルソートを実装せよ

237 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 15:04:36.49 ID:PD6v+6Vh.net]
>>230 Perl5
use feature qw{current_sub say};

sub bblsort {
for (0..@_) {
sub {
if (@_ >= 2) {
__SUB__->(@_[1..$#_]);
($_[1], $_[0]) = ($_[0], $_[1])
if $_[0] > $_[1]
}
}->(@_[$_..$#_]);
}
}

use List::Util shuffle;
@a = shuffle 1..20;
say "1) @a";
bblsort @a;
say "2) @a";

実行結果
~ $ perl 13_230_bblsort.pl
1) 13 6 18 7 15 1 11 8 20 16 14 4 9 10 12 17 2 19 5 3
2) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

238 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 16:42:44.41 ID:hxDCwUVz.net]
お題:数値Xを4つの方法で整数に丸めよ
(1) 0に向かう
(2) 0から遠ざかる
(3) 正の無限大に向かう
(4) 負の無限大に向かう


X = 0.5
=> 0 1 1 0

X = -1.1
=> -1 -2 -1 -2

X = 3
=> 3 3 3 3



239 名前:デフォルトの名無しさん [2019/02/16(土) 16:47:26.55 ID:akVlWGeE.net]
ふたたび、円の内部の整数点を求めるやつ。個数ごとその最小半径を求める。
41個、47個とかが難し目だった気が。

240 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 17:07:10.46 ID:wpb3vJTT.net]
内部じゃなくて円周上のやろ

241 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 17:07:42.16 ID:cltO7Ts6.net]
>>230

242 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 17:27:32.65 ID:PD6v+6Vh.net]
>>232 組み込み使っていいんだよね? (面倒になるけど、使わなくても書けるけどサ…)
Perl5

use POSIX qw(floor ceil);
for (0.5, -1.1, 3) {
@a = ("$_ => ",
sprintf('%d', $_), #int($_),
($_ > 0 ? ceil($_) : ceil($_-1)),
ceil($_),
floor($_)
);
print "@a\n";
}


実行結果
~ $ perl 13_232_round.pl
0.5 => 0 1 1 0
-1.1 => -1 -2 -1 -2
3 => 3 3 3 3

243 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 17:33:21.11 ID:PfkkbXxw.net]
>>230 Ruby
def bs(ary)
  ary.tap do |a|
    (a.size**2).times do
      (a.size - 1).times do |i|
        a[i + 1], a[i] = a[i, 2] if a[i] > a[i + 1]
      end
    end
  end
end
p bs([3, 1, 4, 15, 92]) # => [1, 3, 4, 15, 92]

>>232
sgn = -> n {n <=> 0}
r4 = -> n {n.floor}
r3 = -> n {-r4[-n]}
r2 = -> n {sgn[n] * r3[n.abs]}
r1 = -> n {sgn[n] * r4[n.abs]}

[0.5, -1.1, 3].each{|i| puts 'x = %p => %p %p %p %p' % [i, r1[i], r2[i], r3[i], r4[i]]}
# =>
x = 0.5 => 0 1 1 0
x = -1.1 => -1 -2 -1 -2
x = 3 => 3 3 3 3

244 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 17:34:37.44 ID:PD6v+6Vh.net]
>>236 これだと
入力が0のとき
>(2) 0から遠ざかる
が-1になっちゃう。

($_ > 0 ? ceil($_) : ceil($_-1)),

↓を

($_ >= 0 ? ceil($_) : ceil($_-1)),

とすべきでしょうね。スマソ

245 名前:デフォルトの名無しさん [2019/02/16(土) 18:34:59.76 ID:akVlWGeE.net]
>>234
円周上が正解

246 名前:デフォルトの名無しさん [2019/02/16(土) 22:05:48.79 ID:lcFO2eao.net]
>>262 J
f =: (**<.@|),(**>.@|),<.,>.
f 0.5
0 1 1 0

f _1.1
_1 _2 _1 _2

f 3
3 3 3 3

247 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 22:20:47.39 ID:yZTjSyit.net]
>>262に期待。

248 名前:デフォルトの名無しさん [2019/02/16(土) 22:38:05.19 ID:lcFO2eao.net]
>>240
間違えました
262ではなく>>232でした



249 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 23:30:26.24 ID:ReDOqu2L.net]
>>232 octave
https://ideone.com/7nvSr1

250 名前: mailto:sage [2019/02/17(日) 00:20:40.59 ID:TOi2tzGo.net]
>>232 をやろうとおもって、IEEE754 の float/double を直接触る方法を探しているのですが、なにかいい方法はないでしょうか…

251 名前:デフォルトの名無しさん mailto:sage [2019/02/17(日) 00:24:40.58 ID:xZHcxwZO.net]
言語も言わずに(ry
https://qiita.com/nia_tn1012/items/d26f0fc993895a09b30b

252 名前: mailto:sage [2019/02/17(日) 00:30:56.20 ID:TOi2tzGo.net]
>>245
thx a lot !!

253 名前:デフォルトの名無しさん mailto:sage [2019/02/17(日) 01:04:30.52 ID:iMRi3xg5.net]
>>244
あった

254 名前:デフォルトの名無しさん [2019/02/17(日) 08:30:18.08 ID:SfPzlMrR.net]
>>233
これ


「Nに対し平面上の円で、その円周上の整数点がちょうどN個となる円の最小半径を求めよ」

例)
x^2 + y^2 = 1の整数点は4つだが、最小半径ではない。
(x-0.5)^2 + (y-0.5)^2 = 0.5の方が小さい。

255 名前:デフォルトの名無しさん [2019/02/17(日) 09:09:13.01 ID:SfPzlMrR.net]
>>248
網羅的は、きりがなく一つの予想をたてた。
一つ半径を求めたら、次のような操作で半径を縮めたものと、真の最小半径が一致する予想。

半径rの整数点がNだとして。 rを整数比で縮小して中心をずらす。

たとえば上の例だと、r=1で、r → 2/4 r で、
(2x -1)^2 + (2y -1)^2 = 2r
両辺4倍して中心ずらした式

256 名前:デフォルトの名無しさん [2019/02/17(日) 14:03:58.61 ID:SfPzlMrR.net]
整数比かけるので有理数半径ならすべて作り出せるから当たり前か
無駄なく高速に半径縮められる手法が大事か

257 名前:デフォルトの名無しさん [2019/02/17(日) 14:06:36.33 ID:SfPzlMrR.net]
あと半径は間違いで、半径でなく右辺、半径^2 だった

258 名前:デフォルトの名無しさん [2019/02/17(日) 19:56:30.00 ID:qArvPplr.net]
お題
パンケーキソートを実装する



259 名前:デフォルトの名無しさん mailto:sage [2019/02/18(月) 22:45:5 ]
[ここ壊れてます]

260 名前:7.31 ID:Gp2d+oGP.net mailto: >>252 Perl5 (効率の良いアルゴリズムではないけれど、まずは…)

use List::Util shuffle;

@a = shuffle 1..20;
print "shuffled) @a\n";

sub flip {
($m, $n) = @_;
@a[0..$m] = reverse @a[0..$m];
@a[0..$n] = reverse @a[0..$n];
}

for $i (reverse 1..$#a) {
 $k = undef;
 for (0..$i) {
  $k = $_ if (!defined($k) or $a[$k] < $a[$_])
 }
 flip($k, $i) if $k < $i;
}

print "sorted ) @a\n";


実行例
~ $ perl 13_252_clumsy_pancake_sort.pl
shuffled) 18 6 2 13 16 1 12 15 10 4 17 20 9 7 19 14 5 11 3 8
sorted ) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
[]
[ここ壊れてます]






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<332KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef