結果
| 問題 | No.3557 KCPC or KUPC 2 |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2026-06-13 02:25:04 |
| 言語 | PyPy3 (7.3.17) |
| 結果 |
AC
|
| 実行時間 | 28 ms / 2,000 ms |
| コード長 | 885 bytes |
| 記録 | |
| コンパイル時間 | 200 ms |
| コンパイル使用メモリ | 85,504 KB |
| 実行使用メモリ | 52,224 KB |
| 最終ジャッジ日時 | 2026-06-13 02:25:10 |
| 合計ジャッジ時間 | 5,555 ms |
|
ジャッジサーバーID (参考情報) |
judge1_1 / judge2_1 |
| 純コード判定待ち |
(要ログイン)
| サブタスク | 配点 | 結果 |
|---|---|---|
| 部分点1 | 10 % | AC * 30 |
| 部分点2 | 40 % | AC * 30 |
| 部分点3 | 50 % | AC * 30 |
| 合計 | 100 点 |
ソースコード
## https://yukicoder.me/problems/no/3557
def solve(N, A, B, C):
def solve2(N, A, B, C, day):
n = day // B
x = (n * (n - 1)) // 2
y = A * day + C * x * B
y += C * n * (day % B)
return y >= N
low = 1
high = (N // A) + (1 if N % A > 0 else 0)
while high - low > 1:
mid = (high + low) // 2
if solve2(N, A, B, C, mid):
high = mid
else:
low = mid
if solve2(N, A, B, C, low):
return low
else:
return high
def main():
N = int(input())
A, B, C = map(int, input().split())
D, E, F = map(int, input().split())
n1 = solve(N, A, B, C)
n2 = solve(N, D, E, F)
# print(n1, n2)
if n1 == n2:
print("Same")
elif n1 < n2:
print("KCPC")
else:
print("KUPC")
if __name__ == "__main__":
main()