RiseOJ는 solved.ac와 제휴 관계가 없습니다. 티어 아이콘 © solved.ac. solved.ac
포럼
R03588

S4. Good Triplets

Unrated 레이팅 미적용
난이도
2s
시간 제한
256MB
메모리 제한
0
맞았습니다!!
0
제출 수
0.0%
정답률
레이팅

의견: 0

설명

Andrew is a very curious student who drew a circle with the center at
\((0,0)\) and an integer circumference
of \(C \geq 3\). The location of a
point on the circle is the counter-clockwise arc length from the
right-most point of the circle.

Andrew drew \(N \geq 3\) points at
integer locations. In particular, the \(i\)th point is drawn at location
\(P_i\) \((0 \le P_i \le C-1)\). It is possible for Andrew to draw multiple
points at the same location.

A good triplet is defined as a triplet \((a,b,c)\) that satisfies the following
conditions:

  • \(1 \le a < b < c \le N\).

  • The origin \((0,0)\) lies
    strictly inside the triangle with vertices at \(P_a\), \(P_b\), and \(P_c\). In particular, the origin is
    not on the triangle’s perimeter.

Lastly, two triplets \((a,b,c)\) and
\((a',b',c')\) are distinct
if \(a \ne a'\), \(b \ne b'\), or \(c \ne c'\).

Andrew, being a curious student, wants to know the number of distinct
good triplets. Please help him determine this number.

제약

\(C \geq 3\)
\(N \geq 3\)
\((0 \le P_i \le C-1)\)
\(1 \le a < b < c \le N\)

Marks

The following table shows how the available 15 marks are
distributed.

Marks Awarded Number of Points Circumference Additional Constraints
3 marks \(3 \le N \leq 200\) \(3 \le C \leq 10^6\) None
3 marks \(3 \le N \leq 10^6\) \(3 \le C \leq 6\ 000\) None
6 marks \(3 \le N \leq 10^6\) \(3 \le C \leq 10^6\) \(P_1, P_2, \ldots, P_N\) are all distinct (i.e., every location contains at most one point)
3 marks \(3 \le N \leq 10^6\) \(3 \le C \leq 10^6\) None
입력 형식

The first line contains the integers \(N\) and \(C\), separated by one space.

The second line contains \(N\)
space-separated integers. The \(i\)th integer is \(P_i\) \((0 \le P_i \le C-1)\).

출력 형식

Output the number of distinct good triplets.

예제 1
입력
8 10
0 2 5 5 6 9 0 0
출력
6
설명

Andrew drew the following diagram.

The origin lies strictly inside the triangle with vertices \(P_1\), \(P_2\), and \(P_5\), so \((1,2,5)\) is a good triplet. The other five
good triplets are \((2,3,6)\), \((2,4,6)\), \((2,5,6)\), \((2,5,7)\), and \((2,5,8)\).

문제 정보

생성자가 기록되지 않았습니다.

출처 CCC 2022 Senior

평가 및 의견

S4. Good Triplets

개요
출제자 난이도 Unrated 레이팅 미적용 의견 0 / 50 공개 집계 (커뮤니티 난이도, 주요 주제, 품질)는 의견이 충분히 모이면 공개됩니다.

Log in to rate problems.

개별 의견

아직 의견이 없습니다. 자격이 된다면 위 양식에서 가장 먼저 평가해 보세요.

풀이 제출

S4. Good Triplets

게스트로 둘러보고 있습니다. 로그인하면 풀이를 제출하고 진행 상황을 확인할 수 있습니다. 로그인하고 제출하기
공개
C++20 Tab 들여쓰기 · Ctrl+/ 주석 토글 · Enter 자동 들여쓰기
1 1 1 0 공백: 4 · UTF-8