naritatsu
@naritatsu

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

AtCoder Regular COntest 109 B-logについて

https://atcoder.jp/contests/arc109/tasks/arc109_b

についてですが

https://atcoder.jp/contests/arc109/editorial/378

の通りにしたのですが
下記でやると時間制限にひっかかるのですがどのようにすれば高速化できるでしょうか。

n = int(input())
sum=0

if n==2 or n==1:
  print (1)
else:
  for i in range (n+1):
    sum += i
    if sum > n+1:
      print (n-i+1+1)
      break
0

1Answer

まさにこの記事のように、現在は線形探索になってしまっているのでコーナーケースでTLEしてしまっています。
二分探索を用いた実装に変えることで通るようになると思います。

0Like

Comments

  1. @naritatsu

    Questioner

    ありがとうございました、その通りですね。

Your answer might help someone💌