京セラプログラミングコンテスト2021(AtCoder Beginner Contest 200)
翻译中…
Problem Statement
翻译中…
You are given a sequence of $N$ positive integers: $A = (A_1, A_2, \dots, A_N)$. Determine whether there is a pair of sequences $B = (B_1, B_2, \dots, B_x), C = (C_1, C_2, \dots, C_y)$ satisfying all of the conditions, and print one such pair if it exists.
翻译中…
$1 ≤ x, y ≤ N$.$1 \le B_1 < B_2 < \dots < B_{x} \le N$.$1 \le C_1 < C_2 < \dots < C_{y} \le N$.$B$and$C$are different sequences.- Here, we consider
$B$and$C$different when$x ≠ y$or there is an integer$i\ (1 ≤ i ≤ \min(x, y))$such that$B_i ≠ C_i$. $A_{B_1} + A_{B_2} + \dots + A_{B_x}$and$A_{C_1} + A_{C_2} + \dots + A_{C_y}$are equal modulo$200$.
翻译中…
Constraints
翻译中…
- All values in input are integers.
$2 \le N \le 200$$1 \le A_i \le 10^9$
翻译中…
Input
翻译中…
Input is given from Standard Input in the following format:
翻译中…
N
A_1 A_2 \dots A_N
翻译中…
Output
翻译中…
If there is no pair of sequences $B, C$ satisfying the conditions, print a single line containing No.
Otherwise, print your choice of $B$ and $C$ in the following format:
翻译中…
Yes
x B_1 B_2 \dots B_x
y C_1 C_2 \dots C_y
翻译中…
The checker is case-insensitive: you can use either uppercase or lowercase letters.
翻译中…
样例
Input #1
5
180 186 189 191 218
Output #1
Yes
1 1
2 3 4
For $B=(1),C=(3,4)$, we have $A_1 = 180,\ A_3 + A_4 = 380$, which are equal modulo $200$.
There are other solutions that will also be accepted, such as:
Input #2
2
123 523
Output #2
Yes
1 1
1 2
Input #3
6
2013 1012 2765 2021 508 6971
Output #3
No
If there is no pair of sequences satisfying the conditions, print a single line containing `No`.
题目信息
题面与样例版权归 AtCoder 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。