プログラミングのお題スレ Part17at TECH
プログラミングのお題スレ Part17 - 暇つぶし2ch236:デフォルトの名無しさん
20/04/19 00:35:52.14 suK8nNv5.net
>>231
1)内積⇒arccos
2)外積⇒arcsin
凸判定には角度0や符号反転も要検出なので
2)でやってるがどっかに間違い入っちゃったかもしれなす

237:デフォルトの名無しさん
20/04/19 00:56:56 tNtEbJNg.net
自演と思わないと精神保てないの草

238:デフォルトの名無しさん
20/04/19 01:15:18.71 kCjisW+o.net
お題:マップの縮尺から画面の縮尺バーの長さを求めろ。
縮尺は、現実:画面 = 1:s
バーの長さは100以上で出来るだけ短くする。
バーの現実での長さの数値は 1, 2, 5 が頭にきて以降は0のみが続くもののみ許される。(1桁なら0がなくても良い)
例:
s = 0.003 → 150
0.01 → 100
0.4 → 200
0.96 → 192

239:デフォルトの名無しさん
20/04/19 06:41:17.34 J81tNU7x.net
>>234
問題がよくわからない。

240:デフォルトの名無しさん
20/04/19 07:17:30.86 kCjisW+o.net
説明が下手ですみません。
縮尺バーはGoogleマップの右下にあるようなバーで、画面上のバーの長さが現実では何キロメートルかを示しています。
その現実で何キロメートルかというのがバーの左に表示されています。
バーの長さはズームインしていくと連続的に伸びていき、伸びるすぎるガクッと縮んで、また連続的に伸びていきます。
そしてそのバーの左に表示される距離は2kmや50km、100kmなどの数値のみで中途半端な値は取りません。
この条件下で、縮尺とバーの長さの最小値を定めたときに、どんな長さでバーを画面に表示するかを求める問題です。
バーの長さは取りうるものの中で最小のものでお願いします。

241:デフォルトの名無しさん
20/04/19 07:38:33.09 aJCN2KvM.net
>>234
scheme
URLリンク(ideone.com)

242:デフォルトの名無しさん
20/04/19 07:56:27.14 n5nVZY1D.net
>>233
ひっでえブーメランで草

243:デフォルトの名無しさん
20/04/19 08:58:41.21 OfVksrZS.net
外角って言葉、最近は習わない?

244:デフォルトの名無しさん
20/04/19 12:05:15 bDqlqATM.net
単発IDワラワラ

245:デフォルトの名無しさん
20/04/19 12:16:31 ylCglSST.net
ちょっと数学の話になる度にむきになって荒らすのが必ず一人いるからな

246:デフォルトの名無しさん
20/04/19 12:30:18.52 6WjGzswu.net
お題に答えろよ

247:デフォルトの名無しさん
20/04/19 13:11:54 +exX8g3v.net
日本語や説明が下手なお題だと考える気も起こらない

248:デフォルトの名無しさん
20/04/19 14:11:18 J81tNU7x.net
>>236
現実:画面 = 1:s
という式の意味は?

249:デフォルトの名無しさん
20/04/19 15:33:55 xgV79Bs/.net
>>186 Perl5、P0-P2-P4-P1-P3が凸五角形であるか、で判定

@t = ([[0,0], [1,2], [2,0], [0,1], [2,1]],
   [[0,0], [1,2], [2,0], [0,2], [2,2]],
   [[0,0], [0,1], [1,2], [2,1], [2,0]],
   [[0,0], [5,5], [0,5], [1,0], [1,6]],
   [[0,1], [0,0], [1,0],[-1,-2],[-2,-1]]
   );
@s = qw{0 2 4 1 3 0 2};
use PDL;
use PDL::Math;
use PDL::Constants qw(PI);
use feature 'signatures';
sub f($v1, $v2) {
 my $sp = sum $v1 * $v2;
 $v2 = -$v2 if


250: $sp < 0.0;  my $ang = asin det pdl $v1 , $v2;  $ang = $ang >= 0.0 ? -PI + $ang : PI + $ang if $sp < 0.0;  $ang } for $ps (@t) {  @vs = map{pdl $ps->[$s[$_]]} 0..6;  @es = map{norm($vs[$_+1] - $vs[$_])} 0..5;  $angs = pdl map{f $es[$_], $es[$_+1]} 0..4;  $ans = 'true';  $ans = 'false' if (grep{abs $angs->at($_) < 0.0001} 0..4)             or $angs->min * $angs->max < 0.0;  $ttl = sum $angs;  $ans = 'false' if abs $ttl < 6.28 or abs $ttl > 6.29;  print "$ttl = Σ$angs: $ans\n"; }



251:デフォルトの名無しさん
20/04/19 15:35:04 dE29U5t1.net
>>245 の実行結果

~ $ perl 17_186_convx_pent.pl
The signatures feature is experimental at 17_186_convx_pent.pl line 12, <DATA> line 207.
6.28318528610616 = Σ[ 1.5707963 0.78539816 1.5707963 0.78539816 1.5707963]: true
6.28318530717959 = Σ[ 1.5707963 1.5707963 0 1.5707963 1.5707963]: false
-12.5663706143592 = Σ[-2.2142974 -2.4980915 -2.677945 -2.677945 -2.4980915]: false
-6.28318530717959 = Σ[-0.78539816 -1.0303768 -2.0005586 -0.89605538 -1.5707963]: true
-12.5663706143592 = Σ[-2.0344439 -2.9996956 -2.4980915 -2.9996956 -2.0344439]: false

252:デフォルトの名無しさん
20/04/19 16:09:00.64 wiVZfWUn.net
>>131
Java
URLリンク(paiza.io)

253:デフォルトの名無しさん
20/04/19 16:09:14.25 9DMQwSqL.net
URLリンク(mypage.syosetu.com)
知らねしね

254:デフォルトの名無しさん
20/04/19 16:14:07 o4nQ3+S9.net
>>244
具体的には、地球上で1mの長さの直線の道路があった時、それを画面の地図上で 1m × s の長さで表示するということです。
s=0.01ならその道路は画面に1cmで表示されます。

255:デフォルトの名無しさん
20/04/19 18:05:16.51 3h7RKaJW.net
>>234 Perl5 (問題の意図をくみ取り違えていなければ、下記で良い筈…ただし実の距離が一桁以下の場合はNGかも…)
for $s (qw{0.003 0.01 0.4 0.96}) {
 $d = 1;
 while ($s * $d < 10) { $d *= 10 }
 if (50 <= ($s * $d)) {
  $d *= 2;
 } elsif (20 <= ($s * $d)) {
  $d *= 5;
 } else {
  $d *= 10;
 }
 print "$s -> ", $s * $d, "\n";
}
実行結果
~ $ perl 17_234_scale_bar_len.pl
0.003 -> 150
0.01 -> 100
0.4 -> 200
0.96 -> 192

256:デフォルトの名無しさん
20/04/19 20:22:34 3rSuzVma.net
>>250 もっとスンナリ書けるんだった…

for (qw{0.003 0.01 0.4 0.96}) {
 $d = $_;
 while ($d < 10) { $d *= 10 }
 if  (50 <= $d) { $d *= 2 }
 elsif (20 <= $d) { $d *= 5 }
 else       { $d *= 10 }
 print "$_ -> ", $d, "\n";
}

257:デフォルトの名無しさん
20/04/20 06:02:04 C+lKY/AM.net
>>234 Ruby
def scale( s )
i = (100.0 / s).ceil
j = 100 * 10 ** - Math.log10( s ).to_i
s * j * [ 1, 2, 5 ].each{|k| break k if i <= k * j; 10 }
end

[ 0.003, 0.01, 0.4, 0.96 ].each{|x| puts "%-6g → %d" % [ x, scale(x) ] }

258:デフォルトの名無しさん
20/04/20 16:12:46 EsvxpnHB.net
>>181 Perl5 (Javaじゃなくてスマソ、ActivePerlなどのTkxモジュールがインストールされている環境で実行ください)

use Tkx;

$top = Tkx::widget->new('.');
$c = $top->new_canvas(-width => 300, -height => 300);
$c->g_pack(-expand => 1);

($x0, $y0) = (150, 50);
$r = 200;
($v, $theta) = (0, 3.1415 * 40 / 180);
($x, $y);
$dt = 20;

sub show {
 ($x, $y) = ($x0 + $r * sin $theta, $y0 + $r * cos $theta);
 $c->coords($st


259:ick, $x0, $y0, $x, $y);  $c->coords($ball, $x-7, $y-7, $x+7, $y+7);  Tkx::after($dt, \&show);  $a = -0.00098 * sin $theta;  $a *= $a * $v > 0 ? 0.95 : 1/0.95; # dumping  $dv = $a * $dt;  $dtheta = ($v + $dv/2) * $dt / $r;  $theta += $dtheta;  $v += $dv; } show; $stick = $c->create_line($x0, $y0, $x, $y, -width => 2.0); $ball = $c->create_oval($x-7, $y-7, $x+7, $y+7, -fill => 'gray'); Tkx::MainLoop();



260:デフォルトの名無しさん
20/04/20 17:09:22.78 CQO/p7b7.net
最下点付近での近似だな

261:デフォルトの名無しさん
20/04/20 17:15:47 CQO/p7b7.net
いや普通のだったわ、すまん

262:デフォルトの名無しさん
20/04/20 18:33:21 SXRlK0qI.net
>>181 Python3 (Javaじゃなくてスマソ >>253 をインプリ, tkinterのインストールされている環境で実行ください)

import math, tkinter as tk
root = tk.Tk()
canvas = tk.Canvas(root, width=300, height=300)
canvas.pack()
x0, y0 = 150, 50
r = 200
v, theta = 0, 3.1415 * 40 / 180
x, y = x0 + r * math.sin(theta), y0 + r * math.cos(theta)
stick = canvas.create_line(x0, y0, x, y, width=2)
ball = canvas.create_oval(x-7, y-7, x+7, y+7, fill='gray')
dt = 20
def show():
  global v, theta, x, y
  a = -0.00098 * math.sin(theta)
  a *= 0.95 if a * v > 0 else 1/0.95 # dumping
  dv = a * dt;
  dtheta = (v + dv/2) * dt / r
  theta += dtheta;
  v += dv;
  x, y = x0 + r * math.sin(theta), y0 + r * math.cos(theta)
  canvas.coords(stick, x0, y0, x, y)
  canvas.coords(ball, x-7, y-7, x+7, y+7)
  root.after(dt, show)
show()
root.mainloop()

263:デフォルトの名無しさん
20/04/20 19:55:58 qCtnBvYT.net
そろそろオレ二重振り子見たくなってきちゃったなァ

264:デフォルトの名無しさん
20/04/20 20:37:59.21 7fNLbA/z.net
double pendulumはカオスだからNG

265:デフォルトの名無しさん
20/04/20 21:50:54 3yxFdBsA.net
>>135
Java 操車場アルゴリズム
URLリンク(paiza.io)

266:デフォルトの名無しさん
20/04/20 22:11:41.07 7fNLbA/z.net
>>259
すげえな。
どうやって考えたの?

267:デフォルトの名無しさん
20/04/20 22:36:14 arq8EuUU.net
考えたわけじゃなくね?

268:デフォルトの名無しさん
20/04/20 23:51:34 RmTF1U13.net
これダイクストラなのか

269:デフォルトの名無しさん
20/04/21 00:32:44 2I58wt93.net
スタックに積んで処理していくっていう昔ながらの方法と何か違うの?

270:デフォルトの名無しさん
20/04/21 00:35:59 2I58wt93.net
ウィキペディアにあった

271:デフォルトの名無しさん
20/04/21 19:01:08.06 Nu/0ktL2.net
>>258
数値計算にカオスとか関係なくね?

272:デフォルトの名無しさん
20/04/23 02:45:01 40I0QciX.net
>>135
bash
URLリンク(paiza.io)

eval は使ってないw

273:デフォルトの名無しさん
20/04/23 05:19:07 GeQlI54q.net
>>265
ウルトラマンカオス。

274:デフォルトの名無しさん
20/04/23 22:15:50.71 CuZLC5Yi.net
>>181 Common Lisp (SBCL) + CLX。X Window Systemが使える環境で。>>253, >>256を参考に
(require "asdf")
(asdf:load-system "clx")
(defpackage #:pendulum (:use #:common-lisp #:xlib))
(in-package #:pendulum)
(defvar *display* (open-default-display))
(defvar *screen* (display-default-screen *display*))
(defvar *window* (create-window :parent (


275:screen-root *screen*)          :x 0 :y 0          :width 300 :height 300          :background (screen-white-pixel *screen*))) (defvar *gcontext* (create-gcontext :drawable *window*)) (defparameter *x0* 150) (defparameter *y0* 50) (defparameter *r* 200) (defparameter *theta0* (/ (* pi 40) 180)) (defparameter *dt* 0.03) (map-window *window*) (loop for v = 0 then (+ v dv)   for theta = *theta0* then (+ theta dtheta)   for x = (+ *x0* (floor (* *r* (sin theta))))   for y = (+ *y0* (floor (* *r* (cos theta))))   for a = (let ((a (* -0.00098 (sin theta)))) (funcall (if (> (* a v) 0) #'* #'/) a 0.95))   for dv = (* a *dt*)   for dtheta = (/ (* (+ v (/ dv 2)) *dt*) *r*)   do (progn     (draw-line *window* *gcontext* *x0* *y0* x y)     (draw-arc *window* *gcontext* (- x 7) (- y 7) 14 14 0 (* 2 pi) t)     (clear-area *window*)))



276:デフォルトの名無しさん
20/04/23 23:35:29 CLpyggBI.net
乙。

277:デフォルトの名無しさん
20/04/23 23:53:39 lusTU/GG.net
お題: 配列と列数が与えられるので配列を行列に再構築して返せ
例:
in < [1, 2, 3, 4], 2
out > [[1, 2], [3, 4]]

278:デフォルトの名無しさん
20/04/24 00:06:04 B1fvRJ4E.net
>>270 Perl5

$s = [1, 2, 3, 4];
$ncol = 2;
push @b, [splice @$s, 0, $ncol] while @$s;
use Data::Dump 'dump';
print dump(\@b,)."\n";


実行結果
~ $ perl 17_270.pl
[[1, 2], [3, 4]]

279:デフォルトの名無しさん
20/04/24 00:32:20 9Lyz0QqN.net
>>270 Ruby

p [*eval(str.sub(/],/,"].each_slice"))] # => [[1, 2], [3, 4]]

280:デフォルトの名無しさん
20/04/24 01:48:19 m2hQekEP.net
>>270 D
void main() @safe {
import std.stdio : writeln;
import std.range : chunks;
[1, 2, 3, 4].chunks(2).writeln;
}

281:デフォルトの名無しさん
20/04/24 02:15:23 XDANT2WI.net
>>270 matlab

reshape([1,2,3,4],[],2)

282:デフォルトの名無しさん
20/04/24 06:44:44 q4hgA9QE.net
入力無視すんなら最初からprint([[1,2,],[3,4]])ってかけばええやんw

283:デフォルトの名無しさん
20/04/24 06:56:30 oaHyD4Kv.net
>>270 J
f =: 4 : 0
(-x) , \ y
)

  2 f 1 2 3 4
1 2
3 4

284:デフォルトの名無しさん
20/04/24 13:12:17 UlmQZP6K.net
>>275
あんたバカ?

285:デフォルトの名無しさん
20/04/24 14:03:24 LCR05+vC.net
このスレは入力のハードコーディングは禁止だって>>1に書いてるだろ?

286:デフォルトの名無しさん
20/04/24 15:04:41 SqTnlu82.net
みなのもの戦に備えろ

287:デフォルトの名無しさん
20/04/24 15:36:47.80 fZ+Jqbcm.net
>>270
Kotlin
URLリンク(paiza.io)
こういうことをするための chunked() という拡張関数がライブラリに最初からあるので自分ではほとんど何も考えてない。

288:デフォルトの名無しさん
20/04/24 16:43:36 QbKPO/NJ.net
      \∧_ヘ     / ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ,,、,、,,, / \〇ノゝ  <  どうすっかな……      ,,、,、,,,
    /三√ ゚Д゚) /   \_______
     /三/| ゚U゚|\      ,,、,、,,,               
 ,,、,、,,, U (:::::::::::)∪  ,,、,、,,,
      //三/|三|\       ,,,,    ,,、,、,,,
      ∪  ∪
  ,,          ,    ,,,,    ,,、,、,,,       ,,、,、,,,
,,,,,    ∧_∧ うまいモナー,,,,,   、 ,,,,,,   ,,,,,,,,    ,,,,,
 ,,,   ( ´∀`)___,,,,___ ,, ∧_∧ ゲンキニ シテルカナ・・・___,,
  / ̄ ( つ日ヽ   ∧_∧    (    )               /
/    (__))   (´∀` )   (    )    ∧_∧∧_∧ / マターリモナー
 ∧_∧∧_∧ドーゾ (日ノ )  | | |    ( ´∀`) ´∀`)
 ( ´∀`) ´∀`)    ((__)  ,(_(_) (○)⊂   ) つ日⊂ ) モーナー
―(つ⊂  ) つ⊂ )――――――ヽ|〃(⌒)(⌒) (⌒)(⌒)
   (⌒)(⌒) (⌒)(⌒)グーグー

289:デフォルトの名無しさん
20/04/24 19:26:26 q4hgA9QE.net
>>277
死ねよゴミ

290:デフォルトの名無しさん
20/04/24 19:46:51 OOGSSbp6.net
お題:ABC問題を解いてみましょう。

概要。
URLリンク(originalnews.nico)
サンプル。
URLリンク(wandbox.org)

291:デフォルトの名無しさん
20/04/24 20:10:45 zMxMvQeG.net
解くって何をするん?

292:デフォルトの名無しさん
20/04/24 20:28:58 Ln0giejY.net
論文のurlを表示するとかでいいんじゃね?

293:デフォルトの名無しさん
20/04/24 20:56:21 pA5GOauV.net
お題
XORゲートは4つのNANDゲートで構成できることが知られている
この構成方法をプログラムで探索せよ

i番目のNANDゲートの入力を(ai,bi)、出力をciとする
XORゲートの入力を(X,Y)、出力をZとする

出力例
X->a1
Y->b1
X->a2
c1->b2
Y->a3
c1->b3
c2->a4
c3->b4
c4->Z

294:デフォルトの名無しさん
20/04/24 23:27:45 giWR9tWL.net
>>286
Step 6, Solution 1
0 : -1, -2: 0, 0, 1, 1 : 2
1 : -1, -2: 0, 1, 0, 1 : 2
2 : 1, 0: 1, 1, 1, 0 : 3
3 : 2, 0: 1, 1, 0, 1 : 3
4 : 2, 1: 1, 0, 1, 1 : 3
5 : 4, 3: 0, 1, 1, 0 : 2

295:デフォルトの名無しさん
20/04/25 02:15:29.89 7k5qv/w/.net


296:デフォルトの名無しさん
20/04/25 08:29:40 He4LT43P.net
>>286 Ruby
URLリンク(ideone.com)
対称など考慮せずに 384通りの解が出てきた
ループ判定は手抜き

297:デフォルトの名無しさん
20/04/25 09:02:48 mTthreta.net
[0,0,0,0] は Array.new(4, 0)
[ nil,nil, nil,nil, nil,nil, nil,nil ] は Array.new(8)
って書いた方が分かりやすいな
あとcase-when はthenを使うのが良し

298:デフォルトの名無しさん
20/04/25 13:22:15 o1s8FM4j.net
細かっw

299:289
20/04/27 07:09:24 0mP+psCA.net
>>286 Ruby
URLリンク(ideone.com)
svg で回路図化、配線は手抜き

300:デフォルトの名無しさん
20/04/27 09:21:19.63 Vk+6u7Hb.net
次は全加算器をやってみよう。
4入力セレクタ辺りで限界でしょう。

301:デフォルトの名無しさん
20/04/27 18:53:24.75 KzmnkBMz0.net
このスレってアルゴリズムとかデータ構造を解説してくれる人はあまりいなんだな

302:デフォルトの名無しさん
20/04/27 19:18:51.96 XYadQOO0.net
聞かれなかったから

303:デフォルトの名無しさん
20/04/27 19:29:48 9Rl/jVuf.net
>>294
わからないことあったら聞こうよ
ガキじゃねえんだからさ

304:デフォルトの名無しさん
20/04/27 19:39:12 11UvoXnI.net
そらコードしか書かんわな

305:デフォルトの名無しさん
20/04/27 19:49:07 uF9iuztD.net
アルゴリズムは金になるからここじゃあ書かないよ。
聞きたくなるようなコードをチラ見せするのがプロ。

306:デフォルトの名無しさん
20/04/27 19:50:45 hGnxzjbK.net
聞きたくなるようなのあったか?

307:デフォルトの名無しさん
20/04/27 19:54:18 11UvoXnI.net
そもそもここにそんな高等なお題でねえだろ

308:デフォルトの名無しさん
20/04/27 21:06:36.61 KzmnkBMz.net
知らない言語の長いコードを読むのは難しいからアルゴリズムだけ書いてほしい
そうじゃなかったら何のために披露してるのかわからない

309:デフォルトの名無しさん
20/04/27 21:16:33.23 11UvoXnI.net
知らない言語を知ればいいだけやん

310:デフォルトの名無しさん
20/04/27 21:17:48.49 D3+TkawX.net
(誰かがきっと俺のコードをじっくり読んでくれるはず…!)

311:デフォルトの名無しさん
20/04/27 21:26:35 04Et8o2n.net
perl


312:とかだと全くわからん 暗号にしか見えん まあそれが楽しいんだろうけどw



313:デフォルトの名無しさん
20/04/27 22:44:33.33 9Rl/jVuf.net
アルゴリズムを教えるためのスレじゃないからなw

314:デフォルトの名無しさん
20/04/27 22:46:29.62 Nbm5XyHg.net
アルゴリズムの自信作を披露するスレだろ?

315:デフォルトの名無しさん
20/04/27 22:49:14.07 d54bWA3b.net
やりましたの報告スレじゃね?
しらんけど

316:デフォルトの名無しさん
20/04/27 22:50:44.47 pfA6eg61.net
お題:ワープ付き迷路
始点(S)、終点 (G)、通路(.)、ワープ(0-9)、壁(#)で構成される大きさH×Wの迷路を考える
プレイヤーは、隣接する壁以外のマスにコスト1で移動することができる
ワープマスに入った場合、プレイヤーは対となるワープマスにコスト0で強制的に移動する
迷路中に存在する0-9の個数は、各数字について0個または2個である
始点から終点に移動するときの最小コストを求めよ
ただし、終点に到達できない場合は"impossible"と出力せよ
4 6
1#S...
....#.
#####.
1..G..
=> 7 (ワープを使わずに右に進むとコストは8)
3 3
S1G
###
1##
=> impossible (ワープ先で身動きが取れなくなる)
1 22
S01234567890123498765G
=> 5 (S→0→9→4→5→G)

317:デフォルトの名無しさん
20/04/27 22:57:02.43 EEEc2NVc.net
>>301
披露してる側には意味はあるだろう。
お前の方には読めないコードでは意味がないのかもしれないけど、それはお前の都合でしかないだろう。

318:デフォルトの名無しさん
20/04/27 23:03:37 4xqUIPcT.net
まあそうムキになるな
余裕がある人はコメントなりレスなりで解説入れたりすればいいと思うよ

319:デフォルトの名無しさん
20/04/27 23:15:10 KzmnkBMz.net
>>309
例えば?

320:デフォルトの名無しさん
20/04/27 23:44:27 EEEc2NVc.net
>>311
とりあえず思い付くままにかいてみると、
アルゴリズムだけだったらとるに足らない問題だったり、逆に難しいけどそれただの数学の問題だよねってのが多いけど、それをプログラミング言語で書くから解く方も面白いし見る側も面白い。
同じ問題でも使う言語によって使える機能や記法が異なるから、様々な回答、解法が出てくる。
大抵の人は複数言語が読めるし詳しくなくてもちょっと考えたり調べれば読めるから、読めない人がいることをケアする必要性は特にない。
Jとか一部の言語のワンライナーとかは読めないことが多いけど、むしろそういう読めないようなコードで実現されていることが面白いし、読めないながらも感心してしまう。
アルゴリズムを疑似言語的に書こうとするとどうしても曖昧さや人によって解釈が異なる問題が出てしまうが、仕様が定義された言語を使えばその問題は回避できる。

321:デフォルトの名無しさん
20/04/27 23:47:51 KzmnkBMz0.net
312
>>292とか>>268ってどういうアルゴリズムなん?
やっぱ概要入れてくれたほうが親切だと思う

322:デフォルトの名無しさん
20/04/27 23:51:19 KzmnkBMz0.net
スマホのほうにはslipコマンドが設定してあるのでIDちょっと違いますが
自分はID:KzmnkBMzです

323:デフォルトの名無しさん
20/04/27 23:55:26 EEEc2NVc.net
>>313
説明つけてくれればそりゃ親切だろうけど、回答する人に初めからそこまで求めるなよ。
疑問があれば質問すればいいだけでしょ?

324:デフォルトの名無しさん
20/04/27 23:59:22 KzmnkBMz0.net
>>315
そういう見方もあるかもしれないですね
親切な


325:レスには説明ついていて助かりますね



326:デフォルトの名無しさん
20/04/28 01:00:38.45 0FC2c4TG.net
こういう流れを見てると、つくづくプログラマーって学生時代に冴えなかった奴等の巣窟なんだって痛感するよね…

327:デフォルトの名無しさん
20/04/28 01:33:53 mJox3ckA.net
自分語りかよ…
人を自分と一緒にしないでくれ

>>313 言っちゃー悪いそのレベルだと、まだまだ山のように勉強が必要だと思う

328:デフォルトの名無しさん
20/04/28 01:38:11 LE+4zw96.net
誰かに教えるスレじゃないんだからそういう見方しかないと思うけど…

329:デフォルトの名無しさん
20/04/28 01:38:37 tOE52D5S.net
>>317
それとブラック企業で使い潰され余裕ない奴な

330:デフォルトの名無しさん
20/04/28 01:46:12.43 ljT+88J3.net
俺は職業プログラマではないけどプライド高い人は多そうなイメージ
他板でもプログラミングスレは大抵荒れてる

331:デフォルトの名無しさん
20/04/28 01:48:31.06 dQnTZ6B4.net
勘違いしている底辺が大半
ごく一部が優秀
でもその付加価値に見合った価格が支払われない残念な分野

332:デフォルトの名無しさん
20/04/28 04:03:48 4kUhwH6S.net
教えて欲しいと言えないバカが文句言うスレ

333:デフォルトの名無しさん
20/04/28 04:09:27 lOCVF0xa.net
酷いアスペを見た

334:デフォルトの名無しさん
20/04/28 04:11:48 uDpqz1hl.net
>>324
減った?

335:デフォルトの名無しさん
20/04/28 04:29:18 ayTn4wb+.net
>>294のワード効きすぎだろ
何がそんなに刺さったんだ?
実際は1人が騒いでるだけか??

336:デフォルトの名無しさん
20/04/28 04:53:50 4kUhwH6S.net
スレへのヘイトになってるからねえ
死ねよ自己中

337:デフォルトの名無しさん
20/04/28 04:55:48 4kUhwH6S.net
>>294
こいつだけは絶対に許さない
2chの兵力あげてぶっ潰す

338:デフォルトの名無しさん
20/04/28 05:02:44.84 WLGi8zNs.net
執念やば

339:デフォルトの名無しさん
20/04/28 05:04:21 XMwGDU9f.net
そしてキモ

340:デフォルトの名無しさん
20/04/28 05:17:51 xTCZFQnU.net
とうしつこはい…

341:デフォルトの名無しさん
20/04/28 05:58:30 0ndGBSxH.net
疑問があったら聞けばいいのに

342:デフォルトの名無しさん
20/04/28 06:47:24.12 6K6MgdzD.net
自然科学 + グラフ理論 + 手書き作業 = アルゴリズム

343:デフォルトの名無しさん
20/04/28 06:58:04 cTXOkUEK.net
単振り子のアルゴリズムなんて運動方程式解くだけだろ
近似すれば高校生でも解ける

344:デフォルトの名無しさん
20/04/28 06:58:48 9sR0wNPf.net
アルゴリズムを勉強するスレでもないし
アルゴリズムを競うスレでもない

345:デフォルトの名無しさん
20/04/28 06:59:56 9sR0wNPf.net
>>334
振り子の運動方程式を解くのは非常に難しい

346:デフォルトの名無しさん
20/04/28 07:01:29.73 cTXOkUEK.net
>>336
中学生か?
それとも日本語初心者か?

347:デフォルトの名無しさん
20/04/28 07:03:30.32 9sR0wNPf.net
運動方程式を解く
の意味がわかってないアホ

348:デフォルトの名無しさん
20/04/28 07:04:23.62 cTXOkUEK.net
振幅が小さい時は簡単に微分方程式解けるだろ
日本語が読めないアホ

349:デフォルトの名無しさん
20/04/28 07:05:19.37 9sR0wNPf.net
近似にしても
±90度振れる振り子を近似するのは高校生には出来ない

350:デフォルトの名無しさん
20/04/28 07:05:41.36 9sR0wNPf.net
>>339
条件の後付け

351:デフォルトの名無しさん
20/04/28 07:06:24.06 cTXOkUEK.net
>>334「近似すれば高校生でも解ける」
後付けじゃねえよ。最初から言ってるわ
死ねよ

352:デフォルトの名無しさん
20/04/28 07:06:58.86 9sR0wNPf.net
振幅が小さいとき

353:デフォルトの名無しさん
20/04/28 07:07:14.65 cTXOkUEK.net
単振り子の微分方程式解くときに他にどんな近似するっていうんだ
真面目に精神障害者だろコイツ

354:デフォルトの名無しさん
20/04/28 07:09:17.81 9sR0wNPf.net
>>344
それしか知らないのに簡単とか言うな

355:デフォルトの名無しさん
20/04/28 07:10:42.04 9sR0wNPf.net
解析的には解けない
シミュレーションに頼る
シミュレーションの精度を上げるにも技術がいる
一言で簡単とか言うアホは何もわかってない

356:デフォルトの名無しさん
20/04/28 07:10:47.87 cTXOkUEK.net
>>345
死ねよアホ
お前がアホだからこの程度すら簡単に思えないだけ
死ね

357:デフォルトの名無しさん
20/04/28 07:12:17 cTXOkUEK.net
自分が頭悪いの棚に上げていちゃもんつけられても困るわ

358:デフォルトの名無しさん
20/04/28 07:32:33.87 9sR0wNPf.net
10cmの理想的な単振り子
90度の位置から初速度ゼロで離して
ちょうど10分後の位置を求めよ
簡単だって言うならやってみて

359:デフォルトの名無しさん
20/04/28 07:37:31.08 9sR0wNPf.net
近似が高校で習う1通りしか無いと思ってる時点でアホだし
そもそも近似でしか解けない
「単振動近似なら高校生でも解ける」
これなら誰も反対しない

360:デフォルトの名無しさん
20/04/28 07:38:59.20 9sR0wNPf.net
お題
10cmの理想的な単振り子
90度の位置から初速度ゼロで離して
ちょうど10分後の位置を求めよ

361:デフォルトの名無しさん
20/04/28 07:43:14 cTXOkUEK.net
振り子の運動方程式解くときに近似って言われて振幅が小さい場合を想定できないのは障害者のお前くらいだわ

362:デフォルトの名無しさん
20/04/28 07:44:14 cTXOkUEK.net
>>351
社会の迷惑だからさっさと死んどけ

363:デフォルトの名無しさん
20/04/28 07:56:20.53 UKf6vnXk.net
>>293 Ruby
半加算器
URLリンク(ideone.com)
URLリンク(ideone.com)

364:デフォルトの名無しさん
20/04/28 07:57:37 6K6MgdzD.net
プログラマの99%はリコメンドしない情報盗人。俺調べ。

365:デフォルトの名無しさん
20/04/28 07:58:28 9sR0wNPf.net
そもそも
>>334の「近似すれば」は「高校生でも解ける」にしかかかってないし

366:デフォルトの名無しさん
20/04/28 07:59:19 9sR0wNPf.net
高校生で習う知識が全てと思ってしまう高校生レベルのアホ

367:デフォルトの名無しさん
20/04/28 13:50:52 EhAaIQLq.net
底辺ITドカタは気性が荒いなぁ

368:デフォルトの名無しさん
20/04/28 18:50:58 9sR0wNPf.net
ごめん

369:デフォルトの名無しさん
20/04/28 18:55:56 9sR0wNPf.net
これでもサラリーマンの年収の上位5%に入るんだ

370:◆QZaw55cn4c
20/04/28 18:58:28 cQuYXkHz.net
>>349
重力加速度を指定ください

371:デフォルトの名無しさん
20/04/28 19:02:43 9sR0wNPf.net
9.80665

372:デフォルトの名無しさん
20/04/28 19:31:55 KJ919r2x.net
数学の話になると毎度現れるアスペ君今日も来てて草
アスペが重度なのか数学コンプが重度なのか

373:デフォルトの名無しさん
20/04/28 19:43:22 yUYRMh3W.net
>>308
C 幅優先探索
URLリンク(ideone.com)

374:デフォルトの名無しさん
20/04/28 19:44:24 6K6MgdzD.net
>>293
全加算器
Step 12, Solution 3
0 : -1, -2: 0, 0, 0, 0, 1, 1, 1, 1 : 4
1 : -1, -2: 0, 0, 1, 1, 0, 0, 1, 1 : 4
2 : -1, -2: 0, 1, 0, 1, 0, 1, 0, 1 : 4
3 : 2, 1: 1, 1, 1, 0, 1, 1, 1, 0 : 6
4 : 3, 1: 1, 1, 0, 1, 1, 1, 0, 1 : 6
5 : 3, 2: 1, 0, 1, 1, 1, 0, 1, 1 : 6
6 : 5, 4: 0, 1, 1, 0, 0, 1, 1, 0 : 4
7 : 6, 0: 1, 1, 1, 1, 1, 0, 0, 1 : 6
8 : 7, 0: 1, 1, 1, 1, 0, 1, 1, 0 : 6
9 : 7, 3: 0, 0, 0, 1, 0, 1, 1, 1 : 4 *
10 : 7, 6: 1, 0, 0, 1, 1, 1, 1, 1 : 6
11 : 10, 8: 0, 1, 1, 0, 1, 0, 0, 1 : 4 *
他2

375:デフォルトの名無しさん
20/04/28 21:14:59.05 5Mrr6wN/.net
お題:CapsLock on/offを切り替えながら文字入力
[入力]
A B C S
A : Shiftキーを押さずに1文字入力するのにかかる時間
B : Shiftキーを押しながら1文字入力するのにかかる時間(※)
C : CapsLock on/offの切り替えにかかる時間
S : 入力する文字列(英字のみ)
※CapsLock onで小文字入力、CapsLock offで大文字入力にかかる時間をBとする
[出力]
初期状態をCapsLock offとしたとき、Sを入力するのにかかる時間の最小値を求めよ

(例1)
2 3 4 ABCDE
=> 14
CapsLockを使わない場合、3+3+3+3+3=15
CapsLockを使うと、(4)+2+2+2+2+2=14
(例2)
2 3 4 aBCDe
=> 13
CapsLockを使わない場合、2+3+3+3+2=13
2文字目以降CapsLock onの場合、2+(4)+2+2+2+3=15

376:デフォルトの名無しさん
20/04/29 01:24:53.33 W2Vd/2U1.net
>>364
そんな長いコードよく1日でかけたな

377:デフォルトの名無しさん
20/04/29 02:08:45.13 hFx8dHat.net
つられて開いたら、そんなに長くなかった

378:デフォルトの名無しさん
20/04/29 02:11:21 hFx8dHat.net
モレも若い頃、力ずくの実装


379:でこう言ふコード書いていた時期があった希ガス 遠い目



380:デフォルトの名無しさん
20/04/29 02:17:11 7u9sxpAB.net
プログラマってプライド高いからすぐに張り合うよねw

381:デフォルトの名無しさん
20/04/29 02:21:44 MMtCgKFX.net
誰も張り合っていないが

382:デフォルトの名無しさん
20/04/29 02:22:31 IXK0ODva.net
子どもみたい

383:デフォルトの名無しさん
20/04/29 02:25:50 HpBd3h/I.net
大人とは何か

384:デフォルトの名無しさん
20/04/29 02:27:25.42 IXK0ODva.net
冗談だから間に受けなくていいよ。

385:デフォルトの名無しさん
20/04/29 02:28:27.81 HpBd3h/I.net
大人とは酒、タバコ、Unix

386:デフォルトの名無しさん
20/04/29 02:29:29.28 C2sNF63S.net
>>374
うざいからよそでやれ

387:デフォルトの名無しさん
20/04/29 02:29:46.63 sgNXZLgj.net
うん。で?

388:デフォルトの名無しさん
20/04/29 02:30:51.12 gC4oizq8.net
>>375
うざいからよそでやれ

389:デフォルトの名無しさん
20/04/29 02:33:29.03 YwwSpjL1.net
餌をあげないでください。

390:デフォルトの名無しさん
20/04/29 02:33:56.37 b7RiChMO.net
>>379
うざいからよそでやれ

391:デフォルトの名無しさん
20/04/29 02:35:59.66 nrbD9/Mw.net
>>380
あなたにとってうざいことは、みな歓迎しています

392:デフォルトの名無しさん
20/04/29 02:36:09.16 CXgZ7sKW.net
>>369
そうなんだおじさん「そうなんだ」

393:デフォルトの名無しさん
20/04/29 02:37:10.95 hZe4L1sV.net
いやいや全然違います

394:デフォルトの名無しさん
20/04/29 02:38:46.06 pkOZSJYa.net
いいえ全然違いません

395:デフォルトの名無しさん
20/04/29 02:39:10.87 OQU5gELq.net
くだらねぇーw

396:デフォルトの名無しさん
20/04/29 02:40:49.50 tOnjZeuD.net
くだらないことは何度も

397:デフォルトの名無しさん
20/04/29 02:41:29.87 OQU5gELq.net
うん。で?

398:デフォルトの名無しさん
20/04/29 02:41:55.06 i/nVZZDh.net
うざいからよそでやれ

399:デフォルトの名無しさん
20/04/29 02:43:06.43 OQU5gELq.net
│    _、_
│  ヽ( ,_ノ`)ノ 残念、それは私のおいなりさんだ。
│ へノ   /
└→ ω ノ
      >

400:デフォルトの名無しさん
20/04/29 02:43:16.68 JIRRi7ju.net
おじさんはここがいいです。

401:デフォルトの名無しさん
20/04/29 02:44:14.14 Fecc9l/8.net
くだらねーw

402:デフォルトの名無しさん
20/04/29 02:44:35.49 OQU5gELq.net
逝ってよし

403:デフォルトの名無しさん
20/04/29 02:45:11.17 73PkxB6e.net
おじさんはよそに行きましょうね

404:デフォルトの名無しさん
20/04/29 02:45:55 OQU5gELq.net
↓少し下でID変えて書くはず
逝ってよし

405:デフォルトの名無しさん
20/04/29 02:46:12 mcZoq7mu.net
くだらねーw

406:デフォルトの名無しさん
20/04/29 02:47:10 XlBNFPbk.net
逝ってよし

407:デフォルトの名無しさん
20/04/29 02:47:46 OQU5gELq.net
ktkr

408:デフォルトの名無しさん
20/04/29 02:48:03 QCxNpmbM.net
くだらねーw

409:デフォルトの名無しさん
20/04/29 02:49:03 P4G9hJZv.net
律儀だなお前

410:デフォルトの名無しさん
20/04/29 02:50:36 WGhV7jsx.net
おじいちゃんの唐突な自分語りワロタ

411:デフォルトの名無しさん
20/04/29 02:50:44 189Zc0ZE.net
>>398 ご褒美あげるよ
URLリンク(www.google.co.jp)

412:デフォルトの名無しさん
20/04/29 02:53:16.11 189Zc0ZE.net
>>400
お前も、ご褒美、欲しい?

413:デフォルトの名無しさん
20/04/29 02:54:44 189Zc0ZE.net
やっぱ、お前には、あーげない。

414:デフォルトの名無しさん
20/04/29 02:57:53 189Zc0ZE.net
なぜこの程度で、黙る?

415:デフォルトの名無しさん
20/04/29 02:59:48.25 189Zc0ZE.net
かわいそうなことをしてしまったかな…

416:デフォルトの名無しさん
20/04/29 03:13:10 VGrmX9xw.net
ご褒美にどうせ貼るならこっちだろ
URLリンク(www.google.co.jp)

417:デフォルトの名無しさん
20/04/29 03:14:48 VGrmX9xw.net
いやいやこっち
URLリンク(www.google.co.jp)

418:289
20/04/29 07:47:59 h4pVS5Or.net
>>286 Ruby
URLリンク(ideone.com)
主な処理をテーブルで済ませて高速化
ideone の時間制限内に完走できた

419:デフォルトの名無しさん
20/04/29 09:28:47


420:.04 ID:7z7Xd+nS.net



421:デフォルトの名無しさん
20/04/29 09:42:47.46 v+B1NZPE.net
>>308
2番目の例impossibleじゃなくて S -> 3 -> Gじゃないの?って思ったら入力1行目はH Wだった

422:デフォルトの名無しさん
20/04/29 16:10:16.80 HpBd3h/I.net
>>271
Java
URLリンク(paiza.io)

423:デフォルトの名無しさん
20/04/29 21:05:32 HpBd3h/I.net
>>234
Java
URLリンク(paiza.io)

424:デフォルトの名無しさん
20/04/30 06:48:30 2MGLj+B4.net
>>293
4入力セレクタ

digraph g1 {
subgraph cluster_1 {
label = "Solution_1"
aa_1_0, aa_1_0 -> aa_1_6 ; aa_1_1, aa_1_1 -> aa_1_7 ; aa_1_3, aa_1_1 -> aa_1_8 ;
aa_1_5, aa_1_1 -> aa_1_9 ; aa_1_7, aa_1_2 -> aa_1_10 ; aa_1_7, aa_1_4 -> aa_1_11 ;
aa_1_10, aa_1_8 -> aa_1_12 ; aa_1_11, aa_1_9 -> aa_1_13 ; aa_1_12, aa_1_6 -> aa_1_14 ;
aa_1_13, aa_1_0 -> aa_1_15 ; aa_1_15, aa_1_14 -> aa_1_16 ;
}
}

425:289
20/04/30 07:15:11 SPWNNB7s.net
>>286 Ruby
URLリンク(ideone.com)
2pass化 25%ほど高速化

426:デフォルトの名無しさん
20/05/01 05:08:54.81 GhPTuZah.net
>>286
EXNORはちょっとおもしろい。
Step 7, Solution 1
0 : -1, -2: 0, 0, 1, 1 : 2
1 : -1, -2: 0, 1, 0, 1 : 2
2 : 0, 0: 1, 1, 0, 0 : 2
3 : 1, 0: 1, 1, 1, 0 : 3
4 : 1, 1: 1, 0, 1, 0 : 2
5 : 4, 2: 0, 1, 1, 1 : 3
6 : 5, 3: 1, 0, 0, 1 : 2 *

427:デフォルトの名無しさん
20/05/01 05:42:45 VWVnAecH.net
お題: 関数とパイプを実装せよ
以下のような文字列をパースし、パイプに繋げながら関数を実行せよ
標準入力と標準出力の代わりにバッファを使って実装すること

in < "hello"
out > hello

in < "hello | world"
out > helloworld

in < "world | hello"
out > worldhello

in < "hello | upper"
out > HELLO

in < "hello | world | upper"
out > HELLOWORLD

428:デフォルトの名無しさん
20/05/01 06:02:49 +MJaN8j/.net
>>416
hello | upperはhelloupperだろ

429:289
20/05/01 07:03:56 bMo1YMx1.net
>>286 Ruby
URLリンク(ideone.com)
一度に 4bit計算 40%ほど高速化

430:デフォルトの名無しさん
20/05/01 07:11:29.45 VWVnAecH.net
>>417
upperはバッファを大文字にする関数

431:デフォルトの名無しさん
20/05/01 07:20:48.70 kd4VrQns.net
いや、存在する関数を全部定義しないと実装なんてできんやん
突っ込まれて思わなかったの?

432:デフォルトの名無しさん
20/05/01 07:55:56.05 VWVnAecH.net
hello, world, upperだけ実装すればいいのでは

433:デフォルトの名無しさん
20/05/01 08:08:25 VWVnAecH.net
みんな真面目だなw

434:デフォルトの名無しさん
20/05/01 08:25:09 VWVnAecH.net
>>416 書き直し

お題: 関数hello, world, upperを実装し、それらをパイプで繋げて実行できるようにせよ
標準入力からコマンドライン文字列が一行ずつ入力されるので、それをパースして上記の関数を組み合わせて実行する
関数の出力と入力には標準入出力を使う代わりに、バッファを使い、コマンドライン全体の実行が終わったら構築したバッファを標準出力へ出力すること
例えば入力されるコマンドラインは

in < hello
in < hello | world


435: in < hello | world | upper in < world | hello in < world | hello | upper のようになる hello関数はバッファに文字列「hello」を追加し、world関数はバッファに文字列「wolrd」を追加し、upperはバッファ内の文字列を大文字にする関数である よって最終的なコマンドラインの出力は in < hello out > hello in < hello | world out > helloworld in < hello | world | upper out > HELLOWORLD in < world | upper | hello out > WORLDhello のようになる



436:デフォルトの名無しさん
20/05/01 08:29:55 R0k5e7Mk.net
hello world それぞれを改行無しの printf などで出力し
upper は大きくするだけか

437:デフォルトの名無しさん
20/05/01 08:34:39 VWVnAecH.net
>>424
バッファを使わずに標準入出力だけで実装できるならそれでもいいです

438:デフォルトの名無しさん
20/05/01 11:04:14 MCEzZFz/.net
Ruby には、まさに文字列(バッファ)に、IO インタフェースを実装したクラス、StringIO がある!

439:デフォルトの名無しさん
20/05/01 11:29:05 TOWtsDG5.net
>>423 Ruby
$><<$_.split(' | ').reduce(''){|s,e|[s.upcase,s+e][e.ord%-3]}while gets


-*- input -*-
hello
hello | world
hello | world | upper
world | hello
world | hello | upper

-*- output -*-
hello
helloworld
HELLOWORLD
worldhello
WORLDHELLO

440:デフォルトの名無しさん
20/05/02 23:08:15 MMgV24Hu.net
>>423
Java
URLリンク(paiza.io)

441:デフォルトの名無しさん
20/05/03 01:19:30.67 SFv1ny6W.net
>>423 Perl5, 要求仕様通り素直に三つの関数を定義し、文字列をparseした単語の関数名を呼び出す形で実装
sub hello { $o .= 'hello' }
sub world { $o .= 'world' }
sub upper { $o = uc $o }
for (<DATA>) {
 $o = '';
 &$_ for /(\w+)/g;
 print "$o\n";
}
__DATA__
hello
hello | world
hello | world | upper
world | hello
world | hello | upper
world | upper | hello

実行結果
~ $ perl 17_423_hello_world_upperl.pl
hello
helloworld
HELLOWORLD
worldhello
WORLDHELLO
WORLDhello

442:289
20/05/03 07:15:48.78 E6IlR6fn.net
>>286 Ruby
URLリンク(ideone.com)
枝刈りを強化 38%ほど高速化

443:デフォルトの名無しさん
20/05/03 09:17:11 n5Gy3ytY.net
>>427
world | upper | hello

444:デフォルトの名無しさん
20/05/03 09:27:35.74 /8opEJBh.net
>>431
ちゃんと"WORLDhello"って出力される

445:デフォルトの名無しさん
20/05/04 00:23:42 k2FsLwVs.net
>>423
Kotlin
URLリンク(paiza.io)

文字列を判定して対応する処理をするだけでも良かったが、Map に文字列と対応する処理をセットしてそれを呼び出して実行させるようにした。
また hello, world, upper 以外が入力されるとエラーが出るようになっている。

446:デフォルトの名無しさん
20/05/04 00:44:53 Jy1F1UMD.net
また変なTwitterの奴か

447:289
20/05/04 07:13:05.12 p+pGQ7l4.net
>>286 C++
URLリンク(ideone.com)
Ruby から移植。実行時間は Rubyより 90倍程度高速化

448:デフォルトの名無しさん
20/05/04 07:38:47 kseU4FEU.net
>>435
端子の出現順を固定しないから無駄に組合せが増えているのではないだろうか。

449:デフォルトの名無しさん
20/05/04 13:46:12 FrWOvyZy.net
お題
H行W列のマス目が与えられる。左上の座標を(0, 0)、右下の座標を(H, W)とする。
座標(0.5, 0)を始点にしてボールを右下45度の方向に発射する。
ボールが始点に戻ってくるまでに壁に衝突する回数を求めよ。
(マス目の範囲外は壁とみなす。ボールの大きさや摩擦などは無視してよい)

[入力]
H W
('.'が地面、'#'が壁)

[例]
1 1
.
=> 4 (軌跡は◇の形)

4 5
..#..
#..#.
.#..#
..#..
=> 18

5 10
..........
#########.


450: .......... .######### .......... => 66



451:デフォルトの名無しさん
20/05/04 15:35:11 oc+BowE6.net
>>437
x = Math.gcd(H, W);
print((H / x + 1) * ( W / x + 1));

452:デフォルトの名無しさん
20/05/04 15:38:07 oc+BowE6.net
ああ、違うな
壁って長方形の辺上にだけあるのかと思って解いてた

453:デフォルトの名無しさん
20/05/04 16:28:39 cRRhYgqa.net
バーカ

454:デフォルトの名無しさん
20/05/04 17:18:49 7s1fJbf+.net
>>437 Perl5、素直に壁で跳ね返る回数をカウント

for (<DATA>) {
 ($H, $W, @a) = /(\S+)/g;
 @s = map{[map{$_ eq '#'} split '']} @a;
 my %t;
 for $h (0..$H-1) { $t{$h+0.5}{0} = $t{$h+0.5}{$W} = 1;
  for $w (0..$W-1) { $t{0}{$w+0.5} = $t{$H}{$w+0.5} = 1;
   next unless $s[$h][$w];
   $t{$h}{$w+0.5} = $t{$h+0.5}{$w} = $t{$h+0.5}{$w+1} = $t{$h+1}{$w+0.5} = 1;
  }
 }
 ($x, $y, $dx, $dy, $n) = (0.5, 0, 0.5, 0.5, 0);
 do {
  $x += $dx; $y += $dy;
  if ($t{$y}{$x}) {
   $dx = -$dx if $y =~ /\.5/; $dy = -$dy if $x =~ /\.5/;
   $n++;
  }
 } while $x != 0.5 or $y != 0;
 print "$n\n"
}
__DATA__
1 1 .
4 5 ..#.. #..#. .#..# ..#..
5 10 .......... #########. .......... .######### ..........

実行結果
~ $ perl 17_437_bounce.pl
4
18
66

455:デフォルトの名無しさん
20/05/04 17:58:07.94 IDpBo4iue
あなたの会社は「お金を介した」依存?全員副業必須の経営がもたらした脱依存
URLリンク(www.businessinsider.jp)
新潟から週2回東京に出勤、サイボウズの複業採用社員に聞く複業ライフのリアル。
URLリンク(www.businessinsider.jp)
兼業でフリーライター、サイボウズ社員・明石悠佳に学ぶパラレルワーク術
URLリンク(www.wwdjapan.com)
「複業を解禁しなければ人も企業も成長しない」複業全面OKのサイボウズ社長と実践社員の本音対談
URLリンク(www.businessinsider.jp)
育休は最長6年、副業もOK! サイボウズはなぜ「100人100通りの人事制度」を作ったのか
URLリンク(logmi.jp)
年商10億円の“フリーランスの王”に聞く就活論「頭が悪い人ほど大手企業に行く」
URLリンク(headlines.yahoo.co.jp)
副業3600万円のブロガー、マジメに確定申告したら税金がヤバいことに…
URLリンク(headlines.yahoo.co.jp)

456:デフォルトの名無しさん
20/05/04 18:29:48 FrWOvyZy.net
お題
2つの文字列について、文字列を構成する文字が同じで、最初と最後の文字が合っていれば、
その2つの文字列は等価であるとみなす。

文字列がN個与えられる。
上記ルールに従って重複を除去したとき、文字列はいくつ残るか?

(例)
6
programming
odai
prorgamnimg
oadi
pgorgamming
idao
=> 4

457:デフォルトの名無しさん
20/05/04 19:25:38 ku0WQYaW.net
>>443 Perl5、"6"も文字列に含めれば、4

for (<DATA>) {
 @a = /(\w)/g;
 %h = map{$_ => 1} @a;
 $s = $a[0].join('', sort keys %h).$a[-1];
 print "$_ -> $s\n";
 $g{$s}++;
}
print keys(%g)."\n";
__DATA__
6
programming
odai
prorgamnimg
oadi
pgorgamming
idao

実行結果
~ $ perl 17_442_similstr.pl
666 <- 6
pagimnoprg <- programming
oadioi <- odai
pagimnoprg <- prorgamnimg
oadioi <- oadi
pagimnoprg <- pgorgamming
iadioo <- idao
4

458:デフォルトの名無しさん
20/05/04 19:32:53 Jy1F1UMD.net
暇人か

459:デフォルトの名無しさん
20/05/04 19:38:37 aNaLc8en.net
>>443
(defun cambridge-string= (a b)
(and (char= (elt a 0) (elt b 0))
(char= (elt a (1- (length a))) (elt b (1- (length b))))
(string= (sort (copy-seq a) #'char<) (sort (copy-seq b) #'char<))))

(defvar *set* nil)
(dotimes (n (read))
(pushnew (read-line) *set* :test #'cambridge-string=))
(princ (length *set*))
common lispのsortは破壊的だったのか

460:デフォルトの名無しさん
20/05/04 23:39:20.54 g5q+36pu.net
>>444
Java
URLリンク(paiza.io)

461:デフォルトの名無しさん
20/05/04 23:43:12.22 g5q+36pu.net
>>447
おぎゃー
レス番間違えた
>>443
URLリンク(paiza.io)

462:デフォルトの名無しさん
20/05/04 23:55:30 GlEFtj51.net
>>443 Ruby

p %[6 programming odai prorgamnimg oadi pgorgamming idao].
uniq{|s| b, *m, e = s.chars; [b, e, m.uniq.sort]}.size

# => 4

463:289
20/05/05 07:17:23 JzUmiA6e.net
>>436
端子の順番は固定ですよ
なので print_map2() では省略しています
print_map() で出力すれば >>286 のフォーマットになります

464:デフォルトの名無しさん
20/05/05 09:05:10 ZpeQ6MPR.net
>>443 J

smoutput # ~. <@( /:~ , {. , {:);._2 stdin ''

465:デフォルトの名無しさん
20/05/05 09:59:56 nQMNje/J.net
4入力一致の回路
選別

digraph g1 {
subgraph cluster_1 {
label = "Solution_1"
aa_1_0, aa_1_0 -> aa_1_4 ; aa_1_1, aa_1_1 -> aa_1_5 ;
aa_1_3, aa_1_2 -> aa_1_6 ; aa_1_4, aa_1_2 -> aa_1_7 ;
aa_1_5, aa_1_3 -> aa_1_8 ; aa_1_5, aa_1_4 -> aa_1_9 ;
aa_1_8, aa_1_7 -> aa_1_10 ; aa_1_9, aa_1_6 -> aa_1_11 ;
aa_1_10, aa_1_10 -> aa_1_12 ; aa_1_12, aa_1_11 -> aa_1_13 ;
aa_1_13, aa_1_13 -> aa_1_14 ;
}
}

466:デフォルトの名無しさん
20/05/05 12:20:16 hsugdvwn.net
>>270
R
URLリンク(ideone.com)

467:デフォルトの名無しさん
20/05/05 15:23:47 JDagEH9a.net
>>443
c++
URLリンク(ideone.com)

sortしてuniqするだけ、45行

468:デフォルトの名無しさん
20/05/05 16:00:33 DwVtkNv1.net
>>454
> auto end_pt = unique(s.begin(), s.end());
> s.erase(s.end(), end_pt);
バグってるぞ

469:デフォルトの名無しさん
20/05/05 16:03:15 YfHt+PT9.net
sortしてuniqするだけなら3になるはずだと思って眺めたら
その前に加えて、先頭と最後の文字の比較もしてるやん
auto equalsBeginBack = [=](string a, string b){
return *a.begin() == *b.begin() && *&a.back() == *&b.back();

470:デフォルトの名無しさん
20/05/06 10:23:41 crwQV4oz.net
>>270 ocaml
URLリンク(ideone.com)

471:デフォルトの名無しさん
20/05/06 11:19:55 2pJLNopY.net
>>270 Dart

import 'dart:io';

void main() {
  final var str = stdin.readLineSync();
  const var reg = RegExp(r'\d+');
  final List<int> args = reg.allMatches(str).map((m)=>int.parse(m.group(0))).toList();
  final column = args.removeLast();
  final result = [];
  for(var i = 0; i <= args.length ~/ column; i += column) {
    result.add(args.sublist(i, i + column));
  }
  print(result);
}

// input
[1, 2, 3, 4], 2

// output
[[1, 2], [3, 4]]

472:デフォルトの名無しさん
20/05/06 11:28:40 44vKh6W3.net
#!/usr/bin/env -S sbcl --script

(format t "~d~%"
    (length (delete-duplicates
         (loop repe


473:at (read) collect (read-line))          :test (lambda (a b)              (and (string= (sort a #'char<) (sort b #'char<))                 (char= (char a 0) (char b 0))                 (char= (char a (1- (length a))) (char b (1- (length b))))))))) >>446 Common Lisp HyperSpecではSide Effects: None.となっているけれど。



474:デフォルトの名無しさん
20/05/06 18:22:42 izcxg96Z.net
>>443
Kotlin
URLリンク(paiza.io)

複数の同一文字を1文字扱いでやる場合はコメントを外して SortedSet に文字を入れる方を有効にする。

475:デフォルトの名無しさん
20/05/07 05:41:45 elBmdblJ.net
>>443 Io

File standardInput readLines map(do(
sort .. slice(0,1) .. slice(size)
))unique size println

476:デフォルトの名無しさん
20/05/07 08:19:16 6mNBxlfC.net
>>459
こんなこともできるんだな

477:デフォルトの名無しさん
20/05/08 01:18:21 i1AtDmyk.net
色んな言語による実装が見られて楽しい。
ロゼッタストーンのように自分が出来ない言語の実装も
お題ごとに見られて面白い

478:デフォルトの名無しさん
20/05/08 01:21:58 +VsvN9e2.net
回答する人に力量のある人がいて感心する

479:デフォルトの名無しさん
20/05/08 10:32:30 4QFssqyQ.net
>>452
心が癒される回路である。

480:デフォルトの名無しさん
20/05/08 19:17:46 Fn4yfVbS.net
>>443
Haxe で

var input_ary: Array<String> = [ "6", "programming", "odai", "prorgamnimg", "oadi", "pgorgamming", "idao" ];
var str_map = new Map<String, Bool>( );

for ( i in 0...input_ary.length ) {
var char_ary = input_ary[ i ].split( "" );
var tmp_ary = new Array<String>( );
var tmp_str = "";
var char_map = new Map<String, Bool>( );

tmp_str = tmp_str + char_ary[ 0 ] + char_ary[ char_ary.length - 1 ]; // 最初・最後

for ( j in 0...char_ary.length ) {
char_map.set( char_ary[ j ], true ); // 同じ文字を排除
}
for ( ch in char_map.keys( ) ) {
tmp_ary.push( ch );
}
tmp_ary.sort( function( a, b ): Int {
return ( a.charCodeAt( 0 ) > b.charCodeAt( 0 ) ) ? 1 : -1; }
);
for ( k in 0...tmp_ary.length ) {
tmp_str += tmp_ary[ k ];
}
str_map.set( tmp_str, true ); // 重複排除
}
var size = Lambda.count( str_map );
trace( size ); // 4

481:デフォルトの名無しさん
20/05/09 20:03:47 slqshlLL.net
お題
文字列Sが与えらえる。Sの部分列に"odai"は何個あるか?

[1] odadai => 3
部分列は以下の3通り
oda__i
od__ai
o__dai

[2] odaiodai => 5

[3] ooooddddaaaaiiii => 256

[4] daioadiao => 0

482:デフォルトの名無しさん
20/05/09 20:12:38 I3214lBo.net
>>467
greedy algorithmしか思い浮かばんがいい方法があるのかね

483:デフォルトの名無しさん
20/05/09 20:36:23 xxoS62Bp.net
つべこべ言ってねえでコード書け

484:デフォルトの名無しさん
20/05/09 21:12:25 CDHXGmMd.net
>>467
D 再帰の力ってすげー
size_t count_substring(string target, string from) {
if (target.length == 0) {
return 1;
} else if (from.length == 0) {
return 0;
} else if (target[0] == from[0]) {
return count_substring(target[1..$], from[1..$]) + count_substring(target, from[1..$]);
} else {
return count_substring(target, from[1..$]);
}
}

485:デフォルトの名無しさん
20/05/09 22:25:02 146lBXch.net
>>467
haskell
f [] _=1
f _ []=0
f (x:xs) (y:ys)
| x==y = f xs ys+(f (x:xs) ys)
| otherwise = f (x:xs) ys

f "odai" "odadai" -> 3

486:デフォルトの名無しさん
20/05/10 02:37:29 7LyD5VxZ.net



487:ョ全に再帰案件だったな



488:デフォルトの名無しさん
20/05/10 08:58:28.24 4OJfHckY.net
>>467 Ruby
URLリンク(ideone.com)
文字列処理を減らしたいので 2pass化
"odadai" => [[0], [1, 3], [2, 4], [5]] # 2passでは 左が小さな組み合わせをカウント
"odaiodai" => [[0, 4], [1, 5], [2, 6], [3, 7]]

489:466
20/05/10 13:59:33.90 gIVDr8oL.net
入力サイズが小さいと簡単みたいなので、入力例を追加します。
[1]~[4]の入力を1000回繰り返した文字列を入力とした場合
[1'] 167501334000
[2'] 668668500500
[3'] 10730784064000
[4'] 999666166500

490:デフォルトの名無しさん
20/05/10 15:14:38 f3PnDX6/.net
>>474
python URLリンク(ideone.com)

計算量は "対象文字数 * 4"
"odai"4文字なら、50万文字もいける
(多倍長のコストの方が多いかも)

491:デフォルトの名無しさん
20/05/11 00:53:30 LhYTwRyi.net
マソコ

492:デフォルトの名無しさん
20/05/11 19:02:44.58 bA9qwXrL.net
>>475
すごすぎる

493:蟻人間
20/05/11 19:04:56.86 0EGbwihd.net
お題: 15パズルの解法のプログラム。

494:デフォルトの名無しさん
20/05/11 19:46:15.63 R+jEWyVC.net
>>474
URLリンク(ideone.com)

495:デフォルトの名無しさん
20/05/11 20:40:10 M5DpbX0A.net
15 パズルは、絶対に解けないパターンもあるけど

496:デフォルトの名無しさん
20/05/11 21:17:25.91 WNe361+M.net
確率1/2

497:デフォルトの名無しさん
20/05/11 21:29:36.57 7ARsAnzF.net
解けるパターンでやれ

498:デフォルトの名無しさん
20/05/11 23:42:50 Hyf1216H.net
お題: 15パズルのシャッフルプログラム

499:デフォルトの名無しさん
20/05/11 23:48:03 72QosWs+.net
>>483 js

過去に作ったやつですまん
URLリンク(codepen.io)

500:デフォルトの名無しさん
20/05/12 00:48:01.84 1cwWHoSt.net
>>479
C か

501:デフォルトの名無しさん
20/05/12 06:39:50.88 DbNVGyl2.net
>>474
D URLリンク(ideone.com)
前半に含まれる"odai"の接中辞たちの数と後半のそれから全体のそれを求める、を再帰的にやる

502:デフォルトの名無しさん
20/05/12 19:39:32.13 MKYG7Wu5.net
>>467 Ruby
def f(a,b)
r=0
v=b.chars
a.chars.combination(b.size){|x| r+=1 if x==v}
r
end

503:デフォルトの名無しさん
20/05/12 19:42:03.58 Yyd7NZU2.net
>>487
charsじゃなくてeach_charを使うべきだな

504:デフォルトの名無しさん
20/05/12 19:43:06.34 Yyd7NZU2.net
ごめんなんでもないわ

505:デフォルトの名無しさん
20/05/12 20:28:19.14 Az5UEVMy.net
前にもRubyにケチつけてるやついたな
そんなにRubyが好きなのか

506:デフォルトの名無しさん
20/05/12 23:41:00 FPX3gN+i.net
だれもrubyにはけちつけてないだろ
自意識過剰

507:デフォルトの名無しさん
20/05/12 23:56:13 78VrOqdX.net
だれも~してないだろって何度も見た言い回しだ

508:デフォルトの名無しさん
20/05/13 00:00:23 nr6gd5ft.net
よそでやれ

509:デフォルトの名無しさん
20/05/13 00:03:06 slJfSE7v.net
>>491
Rubyのコードを見るとシュババ!って「Rubyはもっと簡潔に書ける!Rubyはもっと便利なんだ!」だとアピールするやつがいるってこと。
この板にはRubyガイジが蔓延ってるからそいつが脳裏に浮かんだからレスしてみただけです。

510:デフォルトの名無しさん
20/05/13 00:05:48 5NOWSl2X.net
>>494
気持ちは分かるしそう感じている人は一定数いるが
大人になれ
よそでやれ

511:デフォルトの名無しさん
20/05/13 00:07:21.70 nBU0


512:Zg0F.net



513:デフォルトの名無しさん
20/05/13 00:21:44 2w6TZUl8.net
だれも同じとかいってないだろ
自意識過剰

514:デフォルトの名無しさん
20/05/13 00:27:54.61 6zcLgAPe.net
いや同じだ。

515:デフォルトの名無しさん
20/05/13 00:29:44.51 vHp1rr46.net
よそでやれ

516:デフォルトの名無しさん
20/05/13 00:30:24.48 h1pJmPup.net
おっとrubyの悪口はそこまでにしろ
続きは
URLリンク(mevius.2ch.sc)
でやれ。

517:デフォルトの名無しさん
20/05/13 05:39:05.13 n5K1RBuf.net
言われた本人が言うならまだしも外野は黙ってろ

518:デフォルトの名無しさん
20/05/13 08:05:10.41 E1Bs+xhk.net
キミも外野ですやん。

519:デフォルトの名無しさん
20/05/13 09:10:17 n5K1RBuf.net
>>502
死ねキチガイ

520:デフォルトの名無しさん
20/05/13 17:55:10 m+8rhLrR.net
0~7を2~19の素数に対応させた回路
digraph g1 {
subgraph cluster_1 {
label = "Solution_1"
aa_1_1, aa_1_1 -> aa_1_3 ; aa_1_2, aa_1_2 -> aa_1_4 ;
aa_1_3, aa_1_0 -> aa_1_5 ; aa_1_4, aa_1_3 -> aa_1_6 ;
aa_1_5, aa_1_0 -> aa_1_7 ; aa_1_5, aa_1_2 -> aa_1_8 ;
aa_1_6, aa_1_6 -> aa_1_9 ; aa_1_7, aa_1_1 -> aa_1_10 ;
aa_1_7, aa_1_7 -> aa_1_11 ; aa_1_8, aa_1_2 -> aa_1_12 ;
aa_1_8, aa_1_6 -> aa_1_13 ; aa_1_9, aa_1_5 -> aa_1_14 ;
aa_1_12, aa_1_5 -> aa_1_15 ; aa_1_12, aa_1_10 -> aa_1_16 ;
}
}

521:デフォルトの名無しさん
20/05/13 20:50:56 +xkAlvWp.net
>>503
おめえが死ね

522:デフォルトの名無しさん
20/05/13 20:51:34 NqwOCnph.net
いや私が

523:デフォルトの名無しさん
20/05/13 21:30:04 jXNyDpel.net
いや俺が

524:◆QZaw55cn4c
20/05/13 21:47:36 k/cJlRBb.net
私も私も

525:デフォルトの名無しさん
20/05/13 22:24:24 NqwOCnph.net
おまえはしんでいい

526:デフォルトの名無しさん
20/05/13 23:20:16 dw67B8Yn.net
そこはどうぞどうぞだろ

527:デフォルトの名無しさん
20/05/14 00:37:25.58 of1F+sQS.net
違うだろバカたれどもが

528:デフォルトの名無しさん
20/05/14 00:38:29.74 RmYHvTyI.net
クソスレ

529:デフォルトの名無しさん
20/05/14 00:41:44.75 EjdWSTcH.net
>>494

530:デフォルトの名無しさん
20/05/14 00:54:20 jR2NR8u3.net
フォーハンドレッドナインティスリー

531:デフォルトの名無しさん
20/05/14 00:58:18 9jXLNArV.net
またRuby信者が暴れてるのか
そんなんだから廃れるんだぞ

532:デフォルトの名無しさん
20/05/14 04:20:05 v2H0Pbjl.net
>>515
必死過ぎてキモい

533:デフォルトの名無しさん
20/05/14 08:19:01 ATZ04u9M.net
巣から出てこないで

534:デフォルトの名無しさん
20/05/14 11:14:37.43 mLSyRb78.net
お題: 標準入力から使用言語のインポート文やインクルード文に相当する複数の文が入力される
インポート文のパッケージ名をキーにして複数の文を昇順にソートして出力せよ
例: (Pythonの場合)
in < import abc
import def
from ABC import DEF
out > from ABC import DEF
import abc
import def

535:デフォルトの名無しさん
20/05/14 12:37:36 HMZArJeP.net
iostreamが一番上に無いと落ち付かないし、
<>と""が混ざるのもヤダ

536:デフォルトの名無しさん
20/05/14 12:48:23 xgmSq5h2.net
じゃあ勝手にそのルールで作れば

537:デフォルトの名無しさん
20/05/14 16:21:13 TUXEfYWI.net
#includeは行を前後入れ換えるとエラーになることあるから実用的ではない

まあ例え実用的でなくても要求仕様のとおり作れってことなんでは?

538:デフォルトの名無しさん
20/05/14 17:58:25.38 nTyJBG5I.net
お題の意味を深読みするやつはテストの点が悪い
テストの問題などそれが解けるかどうかを見たいのであって
それ自体に大した意味はない

539:デフォルトの名無しさん
20/05/14 18:53:37.14 vCkOIzUf.net
それはそのテストが能力評価試験か
あるいは単なる選別試験化によること

540:デフォルトの名無しさん
20/05/14 19:33:13.92 TM7TYhs5.net
>>518 Ruby
回答が困難な例を考えてみた
require 'etad'.reverse
fo


541:o = 'date' require foo require %w| json date net cgi |[1] module Foo module Bar Car = 'date' end end require Foo::Bar::Car require_relative './foo/../bar/../car/../wrk'



542:デフォルトの名無しさん
20/05/14 19:45:30.93 0XakIAB2.net
馬鹿か。

543:デフォルトの名無しさん
20/05/14 19:59:06 9P667XH0.net
お題
ipのフィルタリングを行ってください
許可するipが次の形式で入力されます allow ip
拒否するipが次の形式で入力されます deny ip
チェックするipが次の形式で入力されます ip
アクセスを許可する場合は次の文字列を出力してください allow
アクセスを拒否する場合は次の文字列を出力してください deny

許可するip、拒否するipの形式は次の2つです
xxx.xxx.xxx.xxx
xxx.xxx.xxx.xxx/xx (CIDR形式)

xxx.xxx.xxx.xxxの場合は、完全一致で判断してください
CIDR形式の場合は、ネットワークアドレスの一致で判断してください

チェックするipの形式はxxx.xxx.xxx.xxxのみです

allowとdenyの優先順について
1. allow ipに該当したらアクセスを許可します
2. 1.に該当せず、deny ipに該当したらアクセスを拒否します
3. 1.に該当せず、2.に該当しない場合アクセスを許可します


入力
allow 192.168.11.9
deny 192.178.12.3/8
allow 192.168.23.34/16
192.168.89.99

出力
allow

544:デフォルトの名無しさん
20/05/14 20:01:48 9P667XH0.net
小規模なシステムだとサーブレットでipのフィルタリングすることあるから結構実用的だと思う

545:デフォルトの名無しさん
20/05/14 20:08:05 jKQspZfc.net
denyだけ調べりゃいいんでない?

546:デフォルトの名無しさん
20/05/14 20:24:36.69 9P667XH0.net
>>528
そういうわけでもないんよ
例えば
deny 0.0.0.0/0
allow 20.8.5.34
とした場合、20.8.5.34は許可するけど、それ以外は全部拒否っちゃうみたいな
ホワイトリスト方式の使い方も想定してるんよ
システムの入り口のところなので大量のリクエストを裁かなければいけないので
できるだけ高速に動作するように、さらにアクセス制御リストに変更があった場合に
即座に反映するために外部リソースから読み取るようにしておいてみたいなことも
考えると良い暇つぶしになるよー

547:デフォルトの名無しさん
20/05/14 20:32:03 jKQspZfc.net
>>529
なるほど確かにその通りであらう

548:デフォルトの名無しさん
20/05/14 20:59:39.91 lLI6eB7P.net
何をあらうんだよ…

549:デフォルトの名無しさん
20/05/14 21:00:22.99 wD9bKf3u.net


550:蟻人間
20/05/14 21:04:20.89 AeCxRE84.net
歴史的仮名遣いだろう

551:デフォルトの名無しさん
20/05/14 21:04:56.76 kU1rpgyO.net
>>528はdenyとでないを掛けた洒落
>>530もあろうの歴史的仮名遣いのあらうとallowを掛けた親父ギャグでしょ

552:デフォルトの名無しさん
20/05/14 21:07:43.58 wD9bKf3u.net
説明しなきゃいられないところがオヤジ

553:デフォルトの名無しさん
20/05/14 21:09:08 kU1rpgyO.net
なんで親父ギャグ(多分)の解説しただけで親父扱いなんですかねぇ

554:デフォルトの名無しさん
20/05/14 21:10:15 qtdgHxAv.net
1番恥ずかしいのは>>533君ですね。

555:デフォルトの名無しさん
20/05/14 21:24:44.88 wD9bKf3u.net
それは間違いない

556:デフォルトの名無しさん
20/05/14 21:44:56.84 bVs50nsv.net
/??la?/であろう

557:デフォルトの名無しさん
20/05/14 21:45:35.19 bVs50nsv.net
もじばけ?
/?`lau/

558:デフォルトの名無しさん
20/05/15 23:46:30 PLtuBlLM.net
>>526>>529 Perl5
sub na { (((($_[0] << 8) + $_[1]) << 8) + $_[2]) << 8 + $_[3] }
sub iaf { my @rl;
 for (split "\n", shift) {
  my @f = /(?:(allow|deny)\s+)?(\d+)\.(\d+)\.(\d+)\.(\d+)(?:\/(\d+))?/;
  if ($f[0]) {
   push @rl, [$f[0], na(@f[1..4]), $f[5]//0];
  


559:} else {    $res = 'allow';    for (@rl) { $res = $$_[0] if ($$_[1] & $$_[2]) == (na(@f[1..4]) & $$_[2]) }    print "$_ -> $res\n";   }  } } iaf <<EOL; allow 192.168.11.9 deny 192.178.12.3/8 allow 192.168.23.34/16 192.168.89.99 EOL iaf <<EOL; deny 0.0.0.0/0 allow 20.8.5.34 20.8.5.34 EOL 実行結果 ~ $ perl 17_525_ip_filt.pl 192.168.89.99 -> allow 20.8.5.34 -> allow



560:540
20/05/15 23:48:47 V3+gK270.net
>>541
ゴメン、これ間違いがある

561:デフォルトの名無しさん
20/05/15 23:58:42 b6XlKvF2.net
あなたはお腹が空くと、[DENY]ーズにいくのだ[ALLOW]ね。

562:540
20/05/16 00:00:07 6i7hUAj2.net
>>541
6行目
× push @rl, [$f[0], na(@f[1..4]), $f[5]//0];

○ push @rl, [$f[0], na(@f[1..4]), -1 & 2**$f[5]-1];

563:蟻人間 ◆T6xkBnTXz7B0
20/05/16 00:38:46 mmCD1xOl.net
お題: ペナルティ方式でパスワードの強度を判定するプログラム。「弱い」「普通」「強い」の3段階で判定する。

5文字より短いパスワードは「ダメ」
「3AAA1567」のような同じ文字が3文字以上並んでる場合は「ダメ」
「1234567」「abcdefg」などの規則的なものは「ダメ」
パスワード辞書に登録されているパスワードは「ダメ」
英単語辞書に登録された単語そのものは「ダメ」
英単語辞書に登録された単語を含むものは「あまり良くない」
英字のみは「あまり良くない」
数字のみは「ダメ」
「2020/5/16」「20.5.16」のような日付に見えるものは「ダメ」

564:540
20/05/16 00:46:40 fpR/KoQd.net
あんさんのお代に共通して言えることだけど、
難易度はさておいて、パスワード辞書に登録されているか調べたり
英単語辞書に登録された単語化調べたりするのは
それなりに冗長でサイズがかさんで回答しにくい。(難易度とは別に手間がかかる)
こういうところに出すお題は、もっと手短にかける回答になるないと
対応しにくい

565:デフォルトの名無しさん
20/05/16 01:11:12.68 Y5etVgbs.net
おまえはお題コンプマンだしなw?

566:540
20/05/16 01:16:31.49 qT19c9Q0.net
また荒れるようにあおる理由は何よ

567:デフォルトの名無しさん
20/05/16 01:17:01.29 lk9pP577.net
テスト用なんだし適当に辞書に数個のデータ書いとけば良くね?
入力例を書くのと同じようなもんでしょ。

568:540
20/05/16 01:18:31.56 qT19c9Q0.net
>>549
まかせた。
俺はこのお題は下りる。

569:デフォルトの名無しさん
20/05/16 01:25:07 lk9pP577.net
自分が指摘されたら無意味な煽りで逆切れか

570:デフォルトの名無しさん
20/05/16 01:27:06 MtRD2Sio.net
>>551
お前、変な絡み方するな。
何か文句あるのか

571:デフォルトの名無しさん
20/05/16 01:38:56.04 +1fKeI4G.net
>>526
C++
Boost.Asio使ってみた
URLリンク(wandbox.org)

572:デフォルトの名無しさん
20/05/16 01:40:21 lk9pP577.net
>>552
貴方は誰だろ

573:デフォルトの名無しさん
20/05/16 01:45:48 wIXI/yEm.net
URLリンク(www.youtube.com)

574:デフォルトの名無しさん
20/05/16 01:57:03 gANc9GME.net
>>545
規則的というのがよくわからんな
aceg
13579
314515926
あたりがいいのか悪いのかわからん

575:デフォルトの名無しさん
20/05/16 02:44:30 XVsJeOb7.net
なんでそんな細かい?
案件が何か?

576:デフォルトの名無しさん
20/05/16 04:31:36 Oh3+MfsL.net
>>545
めんどくさいから一部だけ
URLリンク(ideone.com)

577:デフォルトの名無しさん
20/05/16 06:25:37 d1TWh4yW.net
難しいことはどうでもいいんだよ
糞コテなんかNGに入れて無視しとけ

578:デフォルトの名無しさん
20/05/16 09:12:22.88 F27qhMVV.net
>>554
お前が誰だ�


579:�



580:デフォルトの名無しさん
20/05/16 09:13:48 F27qhMVV.net
>>549
はよ

581:デフォルトの名無しさん
20/05/16 13:21:04 u4MIIZu6.net
キレんなよperlおじさん…

582:デフォルトの名無しさん
20/05/17 01:00:50 3JQ6JRsi.net
>>562

583:デフォルトの名無しさん
20/05/17 01:02:26 vYrP6+Tp.net
>>563

584:デフォルトの名無しさん
20/05/17 01:05:18 m/RKzw04.net
クソスレageるなクズが

585:デフォルトの名無しさん
20/05/17 01:06:25 EUq6tLtb.net
お客さん、お口が悪いですよ。

586:デフォルトの名無しさん
20/05/17 01:12:24 75sCr/7U.net
>>564

587:デフォルトの名無しさん
20/05/17 11:38:13 vMT2I4CL.net
>>567

588:デフォルトの名無しさん
20/05/17 13:24:57 ven71fGO.net
remember perl barber

589:デフォルトの名無しさん
20/05/17 18:19:26 aqCjusZQ.net
>>526
Rust
URLリンク(paiza.io)

590:デフォルトの名無しさん
20/05/18 01:41:36 2yVQDSrG.net
>>526
Kotlin

URLリンク(paiza.io)

allow, deny は共に複数指定可能にした。

591:デフォルトの名無しさん
20/05/19 14:40:55.05 aQX1psnIp
【数学をつくった天才たち①】数奇な運命を辿った愛すべき変人
URLリンク(www.youtube.com)
【暗号解読①】人類の歴史を変えた天才たちのドラマ
URLリンク(www.youtube.com)
【ブロックチェーン①】〜5G時代の最終兵器「ブロックチェーン」人類の未来を変える大発明!〜
URLリンク(www.youtube.com)
【サピエンス全史①】〜1200万部突破の世界的ベストセラーを世界一わかりやすく解説〜
URLリンク(www.youtube.com)
【金持ち父さん①】お金持ちになる手順
URLリンク(www.youtube.com)

592:デフォルトの名無しさん
20/05/19 16:11:48.89 aQX1psnIp
うちの動画編集マンが月収600万円稼いでる件について
URLリンク(www.youtube.com)
コスパ最強の副業「動画編集」で稼ぐ方法【生ハム登場】
URLリンク(www.youtube.com)
【最強の副業】動画編集で稼ぎ続ける人の条件【未来予想】
URLリンク(www.youtube.com)
動画編集で稼ぐための手順を解説します
URLリンク(www.youtube.com)
【副業】動画編集で「月50万くらい」を稼ぐ方法【インタビューした】
URLリンク(www.youtube.com)
MVクリエイターの時給は動画編集者の〇倍!?【インタビュー】
URLリンク(www.youtube.com)
脱サラ後、二か月目で月80万円稼ぐ動画編集マン
URLリンク(www.youtube.com)

593:デフォルトの名無しさん
20/05/19 20:39:41.77 8HY/3oGP.net
「慶應卒の学歴なんていらない」10代起業で成功する子の共通点
URLリンク(www.excite.co.jp)
起業で成功するキャリア形成の仕方とは? 元プロサッカー選手で起業家の鈴木啓祐氏に聞いた
URLリンク(sogyotecho.jp)
【アプリ開発で起業】必要な心得とマネタイズ方法のすべて
URLリンク(www.dreamgate.gr.jp)
学生起業家が開発、「人を軸に本を探すアプリ」とは?読書通じて「考える力」養って
URLリンク(newswitch.jp)
島田商高生がアプリ考案、発表 ICT起業家育成プログラム
URLリンク(www.at-s.com)


594:al/730010.html 医師コンビが「治療用アプリ」で起業、禁煙に続き高血圧治療アプリを開発 https://diamond.jp/articles/-/229375 好きが高じて“カレー起業”、キャッシュレス決済アプリ「TOKYO MIX CURRY」の挑戦 https://diamond.jp/articles/-/215868



595:デフォルトの名無しさん
20/05/20 19:45:40.23 7wrEZNzM.net
お題
N×M個の頂点からなる格子状の無向グラフが与えられる。
グラフのエッジは隣同士の頂点を結んでいる。
このグラフの全域木を一つ出力せよ。
ただし、横線と縦線の数は同じでなければならない。
[入力]
N M (N, Mは3以上の奇数)
[出力]
頂点'o'、横線'-'、縦線'|'を使って全域木を描画せよ。(答えは複数あり得る)
[入力例]
3 7
[出力例]
o-o-o-o-o-o-o
|.|.|.|.|.|.|
o.o.o.o.o.o.o
|.....|...|..
o-o-o.o-o.o-o
※表示の都合上、スペースは'.'に置き換えています。

596:デフォルトの名無しさん
20/05/20 23:01:41 2ebYf5N5.net
>>575 Ruby
n, m = gets.split.map{|s| s.to_i}
na = [ ['-']*(n+m), [' ']*(n*(m-1)-n-m) ].flatten.shuffle
ma = [ ['|']*(n+m), [' ']*(m*(n-1)-n-m) ].flatten.shuffle
n.times{|y|
puts [ na[y*(m-1)...(y+1)*(m-1)].map{|s|'o'+s}, 'o' ] * ''
puts ma[ y*m...(y+1)*m ].join(' ') if y != n-1
}

597:デフォルトの名無しさん
20/05/20 23:05:23 LJzSJjXI.net
お題:二重振り子を数値計算でシミュレーションせよ

598:デフォルトの名無しさん
20/05/20 23:17:13 LJzSJjXI.net
運動方程式
URLリンク(ja.wikipedia.org)

599:蟻人間
20/05/22 12:58:56.52 QNXRWxiX.net
お題: 入力文字列に機種依存文字が含まれているか判定するプログラム。

600:デフォルトの名無しさん
20/05/22 19:35:14 MygyNOFw.net
>>579
Java
URLリンク(paiza.io)

601:デフォルトの名無しさん
20/05/22 19:52:54 GgyK+ULi.net
>>579 C
#include <stdio.h>
int check( unsigned char uc ){
return( uc == 0x40 || uc >= 0x5b && uc <= 0x5e || uc == 0x60 || uc >= 0x7b && uc <= 0x7e || uc >= 0x80 );
}
void main(){
char ch;
while( (ch = getchar()) != EOF )
check( ch ) && printf( "Check %02X '%c'\n", ch, ch );
}

602:蟻人間
20/05/22 21:10:30.88 OWpC2iYH.net
お題: XY平面上の謎のキャラクターPが原点に居てY軸(北)の方向を向いている。Pは何回か次のいずれかのアクションを行う。
アクション1. 90度左に自転する。
アクション2. 90度右に自転する。
アクション3. 一つ前に進む。
入力は、カンマ区切りのアクション番号の並びとする。Pは入力されたアクションを順番に実行する。
出力は、入力の各アクションを実行した後の位置と向き(東西南北)を順番に並べたものとする。
入力例1) 1, 3, 3, 2, 3
入力例2) 3, 2, 3, 1

603:デフォルトの名無しさん
20/05/23 00:30:40 goh2AXYc.net
>>582
Java
URLリンク(paiza.io)

604:デフォルトの名無しさん
20/05/23 02:20:43.28 zNKp3hWU.net
>>582 Ruby
def moves( str )
x, y = 0, 0
r = 0
ta = [ [0,-1], [1,0], [0,1], [-1,0] ]
ts = %w{北 東 南 西}
str.split(/,\s*/).each{|ch|
case ch
when '1'; r = (r - 1) % 4
when '2'; r = (r + 1) % 4
when '3'
x += ta[r][0]
y += ta[r][1]
end
puts "%3d %3d %s" % [ x, y, ts[r] ]
}
end
moves( "1, 3, 3, 2, 3" )
moves( "3, 2, 3, 1" )

605:デフォルトの名無しさん
20/05/23 03:35:28.55 zNKp3hWU.net
>>582 Ruby
def moves( str )
x, y = 0, 0
dx, dy = 0, -1
ts2 = %w{北 西 \ 東 南 }
str.split(/,\s*/).each{|ch|
case ch
when '1'; dx, dy = dy, -dx
when '2'; dx, dy = -dy, dx
when '3'
x += dx
y += dy
end
puts "%3d %3d %s" % [ x, y, ts2[dx + 2*dy + 2] ]
}
end
moves( "1, 3, 3, 2, 3" )
moves( "3, 2, 3, 1" )

606:デフォルトの名無しさん
20/05/23 13:53:09.08 zNKp3hWU.net
>>582 Ruby
Vectorで書き直して歩数を追加
require 'matrix'
def moves( str )
xy = Vector[ 0, 0, 0 ]
v = Vector[ 0, -1, 1 ]
ts = %w{ 北 西 x 東 南 }
str.split(/,\s*/).each{|ch|
case ch
when '1'; v = Vector[ v[1],-v[0], 1]
when '2'; v = Vector[-v[1], v[0], 1]
when '3'; xy += v
end
puts "%3d %3d %3d歩 %s" % [ xy.to_a, ts[v.dot(Vector[1,2,0])+2] ].flatten
}
end

607:デフォルトの名無しさん
20/05/23 14:12:42 z+y0fCqO.net
IT掲示板群 URLリンク(x0000.net)

学術の巨大掲示板群 - アルファ・ラボ URLリンク(x0000.net)<)
UIライブラリ (C#, 2D) を作ったよ
URLリンク(x0000.net)
連続と離散を統一した!
URLリンク(x0000.net)
4Dエンジン(画像有り)
URLリンク(x0000.net)
matrixのライブラリ
URLリンク(x0000.net)
ある強力なFor関数
URLリンク(x0000.net)
SQLライブラリ
URLリンク(x0000.net)

608:デフォルトの名無しさん
20/05/23 20:15:00 a8T1l8MG.net
なにこの糖質ヤバ

609:蟻人間 ◆T6xkBnTXz7B0
20/05/23 20:30:44 tuPjXkuO.net
お題: テキトーに木構造を描画せよ。

入力例)
動物→鳥類、哺乳類
鳥類→ペンギン、アヒル、スズメ
哺乳類→ニワトリ、リス

610:デフォルトの名無しさん
20/05/23 21:34:52 FnKZOoV+.net
>>589
digraph sample {
subgraph cluster1 {
label="cluster1";
{
動物->鳥類, 哺乳類;
鳥類->ペンギン, アヒル, スズメ;
哺乳類->ニワトリ, リス;
哺乳類, 魚類, 鳥類->アマビエ;
}
}
}

611:デフォルトの名無しさん
20/05/23 21:42:52 a8T1l8MG.net
言語は

612:デフォルトの名無しさん
20/05/23 21:58:09 goh2AXYc.net
>>589
Java
URLリンク(paiza.io)

613:デフォルトの名無しさん
20/05/23 22:15:52.40 DjbOJG7z.net
ニワトリっていつから胎生になったんだ

614:デフォルトの名無しさん
20/05/23 22:16:49.59 a8T1l8MG.net


615:デフォルトの名無しさん
20/05/23 22:17:57.75 a8T1l8MG.net
>>592
美しい

616:蟻人間 ◆T6xkBnTXz7B0
20/05/23 23:02:17 tuPjXkuO.net
すみません、ニワトリは鳥類でした。

617:蟻人間
20/05/23 23:05:51.70 tuPjXkuO.net
>>590
これ、言語はGraphVizだよね。

618:蟻人間 ◆T6xkBnTXz7B0
20/05/23 23:25:04 tuPjXkuO.net
お題: おらがロボ村では、5人の選手が参加するマラソン大会が実施される。マラソンコースは半径500mの円形で、各選手はコースを一周する。
マラソン大会の開始時刻では、5人の選手はスタートラインに並ぶ。各選手を20km/h~40km/hのランダムな速度


619:でコースに沿って ゴールに向かって動かし、スタートラインからの相対位置と順位を1分ごとに記録せよ。



620:デフォルトの名無しさん
20/05/24 00:55:11.79 ekGE4/33.net
>>582
perl5
URLリンク(paiza.io)

621:デフォルトの名無しさん
20/05/24 10:12:01.30 wkzwJxq3.net
>>589 Python
URLリンク(ideone.com)

622:デフォルトの名無しさん
20/05/24 20:12:35 UpvKbmnk.net
バグってて草

623:デフォルトの名無しさん
20/05/25 02:07:57.70 XU2RCh4p.net
>>582
Kotlin
URLリンク(paiza.io)

624:デフォルトの名無しさん
20/05/29 18:40:21 m+W9okcT.net
お題: 残りHDD容量を表示せよ

625:デフォルトの名無しさん
20/05/29 19:17:15 9dxE0GBz.net
>>603 bash

df

626:デフォルトの名無しさん
20/05/29 19:46:09 Yyjc625Z.net
>>603 C++ Windows

#include <Windows.h>
#include <iostream>

int main()
{
auto drives = GetLogicalDrives();
for (int i = 0; i < 32; ++i) {
if (drives & (1 << i)) {
char directory[] = "A:";
directory[0] += i;
ULARGE_INTEGER freeBytes;
if (GetDiskFreeSpaceExA(directory, nullptr, nullptr, &freeBytes) != 0) {
std::cout << directory << " " << freeBytes.QuadPart << std::endl;
}
}
}
}

627:デフォルトの名無しさん
20/05/30 02:41:31 k7WMMDxu.net
>>603

#!/bin/sh

echo '残りHDD容量'

628:デフォルトの名無しさん
20/05/30 12:21:03.45 cB0ZATSK.net
>>603
Java
URLリンク(paiza.io)

629:デフォルトの名無しさん
20/05/30 16:03:33 fWBi0L4D.net
>>605
if (drives & (1 << i)) {

↑これなにやってるの?

630:デフォルトの名無しさん
20/05/30 16:05:02 fWBi0L4D.net
すまん自己解決したわ
有効なドライブを判定してるのか

631:デフォルトの名無しさん
20/05/30 19:03:38 Lpj0RiOq.net
かっこは不要

632:デフォルトの名無しさん
20/05/30 19:59:18.23 /dD/Ru8o.net
代々受け継がれた秘伝では
ビット演算にはいやらしいほど大量の括弧を付ける

633:デフォルトの名無しさん
20/05/30 20:08:41 40+e0S4G.net
Cの条件文の後の式も
必ずカッコ{}でくくらないと
気持ち悪くなる体になってしまった

634:デフォルトの名無しさん
20/05/30 21:12:47 9C2F9M2+.net
もうlispがいいんじゃないかな

635:デフォルトの名無しさん
20/05/30 21:17:19.25 sUAkYwHz.net


636:蟻人間
20/05/31 08:43:10.84 KExNe49d.net
お題: アリが20匹現れた。ハエ叩き棒でやっつけろ。ジョークプログラムなので、なるべく面白いのを頼む。

637:デフォルトの名無しさん
20/05/31 10:31:10 Rl1Q+n8J.net
前出のお題の修正:
5以上の素数に対して、6の剰余は±1のいずれかになる。剰余を順次加算していくと
合計が0になる時の素数は
7, 13, 19, 37, 43, 79, 163, 223, 229
が表れる。次に表れる素数は何か。

638:デフォルトの名無しさん
20/05/31 11:28:53 nFHAPcg5.net
>>616
C && sh
is_prime.exe のソース
URLリンク(pastebin.com)
これは is_prime.exe 5 600 で5以上600以下の素数を整形して表示する
また、 exe 7 => 7, exe 8 => のように引数1つの時はそれが素数である場合のみ返す
そんな exe を使えば題意の229の次は521だと分かる

~/bin/is_prime.exe 5 600 |perl -pe 's/\s+/\n/g'| head -200 | sed '



次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch