1
0

ABC368振り返り

Last updated at Posted at 2024-08-24

前回の振り返り

今日はABC開催日だったので参加結果を振り返る

今日はABC3完(1ペナ)

  • い つ も の

A

微妙に実装手間取った。

ソースコード

main.py
import sys
def rI(): return int(sys.stdin.readline().rstrip())
def rLI(): return list(map(int,sys.stdin.readline().rstrip().split()))
def rS(): return sys.stdin.readline().rstrip()
def rLS(): return list(sys.stdin.readline().rstrip().split())
def err(*args): print(*args, file=sys.stderr)

def main():
    N, K = rLI()
    A = rLI()
    B = A[-K:]+A[:N-K]
    print(*B)
    
if __name__ == '__main__':
    main()

B

言われている操作を毎回行って、
条件のチェックにはCounterを使う

ソースコード

main.py
import sys
from itertools import count
from collections import Counter
def rI(): return int(sys.stdin.readline().rstrip())
def rLI(): return list(map(int,sys.stdin.readline().rstrip().split()))
def rS(): return sys.stdin.readline().rstrip()
def rLS(): return list(sys.stdin.readline().rstrip().split())
def err(*args): print(*args, file=sys.stderr)

def main():
    N = rI()
    A = rLI()
    B = A[:]
    for ans in count(start=1):
        B = list(reversed(sorted(B)))
        B[0] -= 1
        B[1] -= 1
        if sum(v for k,v in Counter(B).items() if k > 0) <= 1:
            print(ans)
            break
if __name__ == '__main__':
    main()

C

3回やれば5減るから
そこまではざっくり減らして
細かい微調整をする

  • 最初にも微調整しようとしたらペナった😢

ソースコード

main.py
import sys
def rI(): return int(sys.stdin.readline().rstrip())
def rLI(): return list(map(int,sys.stdin.readline().rstrip().split()))
def rS(): return sys.stdin.readline().rstrip()
def rLS(): return list(sys.stdin.readline().rstrip().split())
def err(*args): print(*args, file=sys.stderr)

def main():
    N = rI()
    H = rLI()
    
    T = 0
    for h in H:
        k = h//5
        T += 3*k
        h -= 5*k
        while h > 0:
            T += 1
            h -= 3 if T % 3 == 0 else 1
    print(T)
    
    
if __name__ == '__main__':
    main()

D

BFSとかDFSとか色々実装しようとしたけど
やっぱり、グラフの問題はできませんorz

E

Dがグラフだったから飛ばして見ようとしたけど
極端に正解数少なかったからちょっと諦めた

F

ゲーム理論はグラフよりきつい

G

クエリと聞いてセグ木、最大値と聞いてDPと反射的に構えて
じゃあセグ木にDP乗せるの!?とか思ってしまった。

まとめ

Cまで解けたのはいいけど
Dがグラフ問題、Eがなんか正解数少ない
そしてそもそもFGは地力不足な話

いい加減グラフと向きあう必要があるのかもしれない…

  • そもそも特定の問題を捨てるなって話←
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0