問題

C - Rotation
AtCoder is a programming contest site for anyone from beginners to experts. We hold weekly programming contests online.

方針
文字自体を置き換える必要はなくて、読み込みの位置のみを更新していけば良い。
解答
#atcoder template
def main():
import sys
input = sys.stdin.readline
#文字列入力の時は上記はerrorとなる。
#ここにコード
#input
n, q = map(int, input().split())
s = list(str(input()))
#output
temp = 0
for i in range(q):
t, x = map(int, input().split())
if t == 1:
temp += x
else:
print(s[(x-temp-1)% n])
#N = 1のときなどcorner caseを確認!
if __name__ == "__main__":
main()提出結果

Submission #33015611 - AtCoder Beginner Contest 258
AtCoder is a programming contest site for anyone from beginners to experts. We hold weekly programming contests online.
感想
これよりもB問題の方が難しい。
関連リンク
ABC 110 C-String Transformation
ABC 125 D-Flipping Sign
関連リンク

AtCoder
AtCoder is a programming contest site for anyone from beginners to experts. We hold weekly programming contests online.


コメント