New Year's Number (Codeforces 1475B)
Tags: Math, brute force

Polycarp remembered the $$$2020$$$-th year, and he is happy with the arrival of the new $$$2021$$$-th year. To remember such a wonderful moment, Polycarp wants to represent the number $$$n$$$ as the sum of a certain number of $$$2020$$$ and a certain number of $$$2021$$$.For example, if:   $$$n=4041$$$, then the number $$$n$$$ can be represented as the sum $$$2020 + 2021$$$;  $$$n=4042$$$, then the number $$$n$$$ can be represented as the sum $$$2021 + 2021$$$;  $$$n=8081$$$, then the number $$$n$$$ can be represented as the sum $$$2020 + 2020 + 2020 + 2021$$$;  $$$n=8079$$$, then the number $$$n$$$ cannot be represented as the sum of the numbers $$$2020$$$ and $$$2021$$$. Help Polycarp to find out whether the number $$$n$$$ can be represented as the sum of a certain number of numbers $$$2020$$$ and a certain number of numbers $$$2021$$$.

Input: The first line contains one integer $$$t$$$ ($$$1 \leq t \leq 10^4$$$) — the number of test cases. Then $$$t$$$ test cases follow.Each test case contains one integer $$$n$$$ ($$$1 \leq n \leq 10^6$$$) — the number that Polycarp wants to represent as the sum of the numbers $$$2020$$$ and $$$2021$$$.

Output: For each test case, output on a separate line:   "YES" if the number $$$n$$$ is representable as the sum of a certain number of $$$2020$$$ and a certain number of $$$2021$$$;  "NO" otherwise. You can output "YES" and "NO" in any case (for example, the strings yEs, yes, Yes and YES will be recognized as positive).


Sample Inputs:
5
1
4041
4042
8081
8079

Sample Outputs:
NO
YES
YES
YES
NO

Solution (Python):
from sys import stdin, stdout
t = int(stdin.readline().strip())
for _ in range(t):
    n = int(stdin.readline().strip())
    if n // 2020 > 0 and n // 2020 - n % 2020 >= 0:
        stdout.write('YES\n')
    else:
        stdout.write('NO\n')

Solution (Python):
for s in [*open(0)][1:]:
    n = int(s)
    print('YNEOS'[n % 2020 > n // 2020::2])

Solution (Python):
from sys import stdin
input = stdin.readline

def ri():
    return int(input())

def rl(v_type=int, output=list):
    return output(map(v_type, input().split()))

def rs():
    return input()[:-1]

def out(x, sep='\n'):
    print(sep.join(x))

def solve():
    c = ri()
    return 'yes' if c - 2021 * (c % 2020) >= 0 else 'no'
outp = []
for TC in range(ri()):
    outp.append(str(solve()))
out(outp)