Submission #696236


Source Code Expand

#include <algorithm>
#include <array>
#include <complex>
#include <cassert>
#include <cctype>
#include <climits>
#include <cmath>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <ctime>
#include <functional>
#include <iomanip>
#include <iostream>
#include <map>
#include <memory>
#include <queue>
#include <set>
#include <string>
#include <tuple>
#include <vector>

using namespace std;

typedef long long ll;
typedef unsigned long long ull;

inline bool valid(const int x, const int r) { return 0 <= x && x < r; }

void initIOStream() {
  ios::sync_with_stdio(false); // stdinなどと同期しない
  cin.tie(0); // cinの前にflushしない
  cout.setf(ios::fixed);
  cout.precision(10); // 四捨五入して指定桁数表示
}

typedef pair<int, int> P;

int dy[4] = {-1, 0, 1, 0};
int dx[4] = {0, 1, 0, -1};
P p1, p2, p3;
int r;

bool visibleRed(){
  int cnt = 0;
  for(int i = 0; i < 4; ++i){
    P p(p1.first + dx[i] * r, p1.second + dy[i] * r);
    if(p2.first <= p.first && p.first <= p3.first &&
       p2.second <= p.second && p.second <= p3.second){
      ++cnt;
    }
  }
  return cnt != 4;
}

bool inCurcle(P q){
  int a = p1.first - q.first;
  int b = p1.second - q.second;
  return a * a + b * b <= r * r;
}

bool visibleBlue(){
  return
    !inCurcle(p2) ||
    !inCurcle(p3) ||
    !inCurcle(P(p2.first, p3.second)) ||
    !inCurcle(P(p3.first, p2.second));
}

int main() {
  initIOStream();
  cin >> p1.first >> p1.second >> r;
  cin >> p2.first >> p2.second >> p3.first >> p3.second;
  cout << (visibleRed() ? "YES" : "NO") << endl;
  cout << (visibleBlue() ? "YES" : "NO") << endl;
}

Submission Info

Submission Time
Task A - 塗り絵
User lawel3110
Language C++14 (GCC 5.4.1)
Score 100
Code Size 1702 Byte
Status AC
Exec Time 4 ms
Memory 256 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 5
AC × 35
Set Name Test Cases
Sample example_0.txt, example_1.txt, example_2.txt, example_3.txt, example_4.txt
All blue_0.txt, blue_1.txt, blue_2.txt, blue_3.txt, blue_4.txt, blue_5.txt, blue_6.txt, blue_7.txt, blue_8.txt, blue_9.txt, example_0.txt, example_1.txt, example_2.txt, example_3.txt, example_4.txt, random_0.txt, random_1.txt, random_2.txt, random_3.txt, random_4.txt, random_5.txt, random_6.txt, random_7.txt, random_8.txt, random_9.txt, red_0.txt, red_1.txt, red_2.txt, red_3.txt, red_4.txt, red_5.txt, red_6.txt, red_7.txt, red_8.txt, red_9.txt
Case Name Status Exec Time Memory
blue_0.txt AC 4 ms 256 KiB
blue_1.txt AC 4 ms 256 KiB
blue_2.txt AC 4 ms 256 KiB
blue_3.txt AC 4 ms 256 KiB
blue_4.txt AC 4 ms 256 KiB
blue_5.txt AC 4 ms 256 KiB
blue_6.txt AC 4 ms 256 KiB
blue_7.txt AC 4 ms 256 KiB
blue_8.txt AC 4 ms 256 KiB
blue_9.txt AC 4 ms 256 KiB
example_0.txt AC 4 ms 256 KiB
example_1.txt AC 4 ms 256 KiB
example_2.txt AC 4 ms 256 KiB
example_3.txt AC 4 ms 256 KiB
example_4.txt AC 4 ms 256 KiB
random_0.txt AC 4 ms 256 KiB
random_1.txt AC 4 ms 256 KiB
random_2.txt AC 4 ms 256 KiB
random_3.txt AC 4 ms 256 KiB
random_4.txt AC 4 ms 256 KiB
random_5.txt AC 4 ms 256 KiB
random_6.txt AC 4 ms 256 KiB
random_7.txt AC 4 ms 256 KiB
random_8.txt AC 4 ms 256 KiB
random_9.txt AC 4 ms 256 KiB
red_0.txt AC 4 ms 256 KiB
red_1.txt AC 4 ms 256 KiB
red_2.txt AC 4 ms 256 KiB
red_3.txt AC 4 ms 256 KiB
red_4.txt AC 4 ms 256 KiB
red_5.txt AC 4 ms 256 KiB
red_6.txt AC 4 ms 256 KiB
red_7.txt AC 4 ms 256 KiB
red_8.txt AC 4 ms 256 KiB
red_9.txt AC 4 ms 256 KiB