結果
| 問題 |
No.512 魔法少女の追いかけっこ
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2018-07-10 14:20:36 |
| 言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
AC
|
| 実行時間 | 2 ms / 2,000 ms |
| コード長 | 1,488 bytes |
| コンパイル時間 | 1,685 ms |
| コンパイル使用メモリ | 169,200 KB |
| 実行使用メモリ | 6,944 KB |
| 最終ジャッジ日時 | 2024-07-21 16:22:04 |
| 合計ジャッジ時間 | 2,808 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 53 |
ソースコード
#include <bits/stdc++.h>
#include <typeinfo>
#include <cxxabi.h>
#ifdef LOCAL
#include "dbgtoki.hpp"
#define DUMP(i) dump((string)TOSTRING(i), demangle(typeid(i).name()), __LINE__ , i)
#else
#define DUMP(i)
#endif
using namespace std;
#define TOSTRING(x) #x
#define SZ(x) (int)(x).size()
#define REP(i,n) for(int i=0;i<(n);i++)
#define FOR(i,a,b) for(int i=(a);i<(b);i++)
#define ALL(s) (s).begin(), (s).end()
#define UNIQUE(v) v.erase( unique(v.begin(), v.end()) , v.end());
#define dis distance
#define so(V) sort(ALL(V))
#define rev(V) reverse(ALL(V))
#define pub push_back
#define sec second
#define fir first
typedef long long unsigned int llu;
typedef long long ll;
typedef vector<int> vi;
typedef vector<ll> vll;
typedef vector<vector <int> > vvi;
const int EPS = 1e-9;
const int MOD = 1e9+7;
const int INF = (1 << 30);
int main(){
cin.tie(0);
ios::sync_with_stdio(false);
int x,y;
cin >> x >> y;
int n;
cin >> n;
vi A(n);
REP(i,n)cin >> A[i];
int dif = y-x;
DUMP(dif);
FOR(pos,1,n){
/* dif/3.6 * time => 二人の間に開いた距離
time = A[pos-1] / x * 3.6 => kobaが師匠の直前に過ぎ去った交差点に達した時間
dif/3.6 * time > A[pos]-A[pos-1]
dif/3.6 * A[pos-1] / x * 3.6 > A[pos]-A[pos-1]
dif * A[pos-1] > (A[pos] - A[pos-1] * x)
*/
DUMP((double)A[pos-1]/x*3.6);
DUMP(dif * A[pos-1]);
if(dif * A[pos-1] > (A[pos]-A[pos-1]) * x ){
cout << "NO" << endl;
return 0;
}
}
cout << "YES" << endl;
return 0;
}