結果
| 問題 | No.740 幻の木 | 
| コンテスト | |
| ユーザー |  はむ吉🐹 | 
| 提出日時 | 2018-10-05 21:34:39 | 
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 30 ms / 2,000 ms | 
| コード長 | 558 bytes | 
| コンパイル時間 | 94 ms | 
| コンパイル使用メモリ | 12,544 KB | 
| 実行使用メモリ | 10,880 KB | 
| 最終ジャッジ日時 | 2024-10-12 12:55:26 | 
| 合計ジャッジ時間 | 897 ms | 
| ジャッジサーバーID (参考情報) | judge3 / judge2 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 3 | 
| other | AC * 6 | 
ソースコード
#!/usr/bin/env python3
T = 12
def solve(n, m, p, q):
    per_cycle = (T - q) * m + q * 2 * m
    num_cycles, rest_leaves = divmod(n, per_cycle)
    per_months = [m] * (p - 1) + [2 * m] * q + [m] * (T - p - q + 1)
    for idx_month, per_month in enumerate(per_months):
        if rest_leaves <= 0:
            return num_cycles * T + idx_month
        else:
            rest_leaves -= per_month
    raise Exception("Error")
def main():
    n, m, p, q = (int(z) for z in input().split())
    print(solve(n, m, p, q))
if __name__ == '__main__':
    main()
            
            
            
        