Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

lmlmlm

AtCoder Beginner Contest 249 본문

문제풀기

AtCoder Beginner Contest 249

lml 2022. 5. 2. 15:15

https://atcoder.jp/contests/abc249/tasks

 

대체 이건 언제 있었던 Contest인가

 

A. Jogging

 

그대로 구현

 

B. Perfect String

 

그대로 구현

 

C. Just K

 

비트마스킹하여 S의 모든 subset에 대해서 구현

 

D. Index Trio

 

전형적인 n/1 + n/2 + ... = nlgn을 사용하는 문제

모든 n이하의 자연수 i에 대하여, i의 배수의 j에 대해 cnt[i]*cnt[j]를 더해주면 된다.

https://atcoder.jp/contests/abc249/submissions/31366475

 

E. RLE

 

dp[i][j] : S의 길이가 i이고 T의 길이가 j인 경우의 수

naive한 dp를 해보면 알겠지만, 뒤에 a가 1개오든, 2개오든... 9개오든 T의 길이는 동일하다.

-> 따라서 a가 1개 오는 것에 경우의 수를 더해두고 a가 10개 오는 것에 빼둠으로써 dp를 prefix sum처럼 계산 가능

https://atcoder.jp/contests/abc249/submissions/31382433

 

F. Ignore operations

 

사실 t = 2인게 주어진 순간, 이전의 모든 operation은 모두 받았다고 가정할 수 있다.

따라서 최악의  k - (내 이후의 t = 2인 operation 개수)개의 t = 1인 operation을 제외하여주면 된다.

https://atcoder.jp/contests/abc249/submissions/31382894

뭔가 구현이 중점이 되는 문제 set이였다.

 

G. XOR cards

 

https://koosaga.com/132 -> 웰논이라고 누가 그랬었다. 추가로 'XOR 포커'의 풀이도 참고해라.

get_min( vector a, int b)는 b에 a의 원소들을 적당히 xor하여 만들 수 있는 최솟값이다. (위의 링크 참고)

이제 답이 특정 비트를 가질 수 있는지 확인해주면서 가면된다.

-> 특정비트를 가진 카드들에 (1ll << (i + 31))을 더해주면 이 카드들이 무조건 홀수 개 존재하도록 강요된다.

https://atcoder.jp/contests/abc249/submissions/31391181

 

'문제풀기' 카테고리의 다른 글

Codeforces Round #789 (Div. 2)  (0) 2022.05.16
Codeforces Round #783 (Div. 1)  (0) 2022.05.04
Codeforces Round #785 (Div. 2)  (0) 2022.05.01
AtCoder Regular Contest 139  (0) 2022.04.25
Codeforces Global Round 20  (0) 2022.04.24
Comments