만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

다트

면접 대비

시간 제한1초메모리 제한2048 MB

요약
3차원 공간에서 주어진 n개의 다트 궤적을 따라 날아갔을 때, 원점에 놓인 타원형 과녁에 맞는 다트의 개수를 구합니다.
난이도

보통10점 중 4점

유형
기하, 수학
정답자
아직 제출이 없습니다

문제

당신은 'Flying Projectile Coding'이라는 프로젝트에 참여하고 있다. 이 프로젝트는 살짝 변형된 다트판에 다트를 던지는 똑똑한 기계학습 AI를 만드는 것이 목표다. 실제 테스트 전에 시뮬레이션에서 AI를 훈련하기로 했다. 시뮬레이션이 훨씬 빠르고 저렴하기 때문이다.

이 프로젝트에서 당신은 AI의 성능을 평가한다. AI는 아직 초기 단계라서 다트가 판에 맞았는지 여부만 본다. 지금은 중력을 무시할 수 있다고 가정하므로 다트는 직선으로 날아간다.

다트판

입력

첫 줄에 던진 다트의 개수를 나타내는 정수 nn (1≤n≤1051 \leq n \leq 10^5)이 주어진다.

다음 두 줄에는 각각 실수 3개가 주어진다. 첫 번째 줄은 (h1,h2,h3)(h_1, h_2, h_3), 두 번째 줄은 (v1,v2,v3)(v_1, v_2, v_3)이며, −10≤h1,h2,h3≤10-10 \leq h_1, h_2, h_3 \leq 10, −10≤v1,v2,v3≤10-10 \leq v_1, v_2, v_3 \leq 10이다. 다트판은 (0,0,0)(0, 0, 0)에 고정되어 있고, 서로 수직인 축 (h1,h2,h3)(h_1, h_2, h_3)와 (v1,v2,v3)(v_1, v_2, v_3)를 갖는 타원 모양이다.

이후 nn개의 줄에는 각각 실수 6개 p1,p2,p3,d1,d2,d3p_1, p_2, p_3, d_1, d_2, d_3가 주어진다. −100≤p1,p2,p3≤100-100 \leq p_1, p_2, p_3 \leq 100, −10≤d1,d2,d3≤10-10 \leq d_1, d_2, d_3 \leq 10이다. 각 줄은 위치 (p1,p2,p3)(p_1, p_2, p_3)에서 방향 (d1,d2,d3)(d_1, d_2, d_3)로 던진 다트를 나타낸다.

출력

다트판에 맞은 다트의 개수를 출력한다.

예제2

  1. 예제 1

    입력
    3
    2.0 0.0 0.0
    0.0 1.0 0.0
    0.0 0.0 2.0 2.0 1.0 4.0
    0.0 0.0 -2.0 2.0 1.0 4.0
    0.0 0.0 2.0 2.0 0.0 0.0
    
    예상 출력
    1
    
  2. 예제 2

    입력
    6
    1.0 1.0 0.0
    1.0 -1.0 1.0
    0.0 0.0 1.0 0.0 0.0 -1.0
    0.0 0.0 1.0 1.0 1.0 0.0
    0.0 0.0 1.0 1.0 -1.0 1.0
    1.0 -1.0 -1.0 -1.0 1.0 8.0
    1.0 -1.0 -1.0 1.0 -1.0 8.0
    -1.0 1.0 1.0 1.0 -1.0 -8.0
    
    예상 출력
    3