結果
| 問題 |
No.2555 Intriguing Triangle
|
| コンテスト | |
| ユーザー |
shobonvip
|
| 提出日時 | 2023-12-01 23:54:59 |
| 言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,118 bytes |
| コンパイル時間 | 1,870 ms |
| コンパイル使用メモリ | 194,956 KB |
| 最終ジャッジ日時 | 2025-02-18 03:05:43 |
|
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 22 WA * 6 |
ソースコード
#include<bits/stdc++.h>
using namespace std;
int main(){
int a, b, c; cin >> a >> b >> c;
auto hen_to_cos = [&](double a, double b, double c){
return (a*a + b*b - c*c) / (2.0*a*b);
};
const double eps = 1e-8;
bool mode = false;
for (int x=a+2; x<b+c; x++){
double ax = 0.0, ay = 0.0;
double cx = c, cy = 0.0;
double bx, by;
double cos1 = hen_to_cos(b, c, x);
double sin1 = sqrt(1 - cos1 * cos1);
bx = cos1 * b;
by = sin1 * b;
for (int y=1; ; y++){
if (x-(y+a) <= 0) break;
int z = x-(y+a);
double dx = bx + (cx - bx) * (double)y / (double)x;
double dy = by + (cy - by) * (double)y / (double)x;
double ex = bx + (cx - bx) * (double)(y+a) / (double)x;
double ey = by + (cy - by) * (double)(y+a) / (double)x;
double AD = sqrt((dx - ax) * (dx - ax) + (dy - ay) * (dy - ay));
double AE = sqrt((ex - ax) * (ex - ax) + (ey - ay) * (ey - ay));
if (abs(hen_to_cos(b, AD, y) - hen_to_cos(c, AE, x-y-a)) < eps){
//cout << y << ' ' << x-y-a << endl;
mode = true;
break;
}
}
if (mode) break;
}
if (mode){
cout << "Yes\n";
}else{
cout << "No\n";
}
}
shobonvip