>>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 $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";
}
プログラミングのお題スレ Part17
■ このスレッドは過去ログ倉庫に格納されています
245デフォルトの名無しさん
2020/04/19(日) 15:33:55.52ID:xgV79Bs/■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【北区小学校火災】女性教師「電気ストーブ近くで洗濯物を乾かしていた」 失火とみて捜査 燃えた残骸に“繊維片”付着 ★5 [Ailuropoda melanoleuca★]
- 【W杯】元ブラジル代表ロナウド氏「日本には簡単に勝てる」決勝T1回戦で対戦可能性…避けたいのは「オランダ」 ★2 [首都圏の虎★]
- 《独裁に党内から異論噴出!》高市首相 暴かれた本性 〈木下秘書の陰謀論「文春は中国から毎週1000万円もらっている」〉 | 週刊文春 [少考さん★]
- 「名古屋ほど適した場所ない」 広沢市長、副首都法案提出めぐり [首都圏の虎★]
- 仏でエボラ熱感染初確認 [首都圏の虎★]
- AKB48から契約解除の花田藍衣 丸刈りめぐり運営側を非難、対抗する姿勢「何年かかってでも戦っていきます」 [ひかり★]
- 【実況】博衣こよりのえちえちこども裁判クイズ🧪★2
- 高市政府「皇室典範では養子禁止になってるけど旧宮家の養子は例外な閣議決定するから」 [668970678]
- 【大爆笑】高市、アメリカにインターンで行ってただけだった。連邦議会立法調査官とは一体… [744361492]
- ジャップ、松屋でお祈りしてるだけの店員にぶち切れ… 心まで貧しくなる日本人…🫪 [667744927]
- タイミーで自分の店に応募 店長の男を逮捕 [459590647]
- 【画像】女子高生殺害事件の裁判で死刑にしろと乱入した正義マンの配達員(48)逮捕され顔面開示 [347751896]