[24.02.21] CF Round 922 div. 2 upsolve +
·
PS 기록/내실 쌓기
A번은 문제를 잘 읽어봐야 한다. 굳이 N * M 넓이의 wall을 세로 벽돌까지 써서 채워야 할 필요가 없고 가로 벽돌만 채우면 된다.import sysinput = sys.stdin.readline T = int(input())for _ in range(T): N, M = map(int, input().split()) #가로(M) == K 일 때, 벽돌 N개 tmp = M//2*N print(max(N, tmp))  B번은 inversion을 최소화하는 문제이다. (i, j) 인덱스 순서쌍이 있고, i arr[j] 인 경우 inversion 상태라고 정의한다. 이 상태를 최소화 시키기 위해서 우리는 A arr, B arr에서 동시에 스왑을 해줘야한다. (i, j) -> (j,..
[24.02.20] CF Round 927 div. 3 virtual + Gold 한 문제 풀기
·
PS 기록/내실 쌓기
A번은 가시가 두 번 나오기 전까지 coin 개수를 더해주면 된다.import sysinput = sys.stdin.readline T = int(input()) for _ in range(T): N = int(input()) st = input().rstrip() cnt, flg = 0, 1 for i in range(N-1): if st[i] == '@': cnt += 1 if st[i] == '*' and st[i+1] == '*': flg = 0 break print(cnt+1 if flg and st[-1] == '@' else cnt) B번은 뇌 덜 깸 이슈로 문제 이해하는데 시간..
회고
·
PS 기록/내실 쌓기
보호되어 있는 글입니다.
2457 - 공주님의 정원 (Greedy 자력솔하기)
·
PS 기록/Algorithm
https://www.acmicpc.net/problem/2457 2457번: 공주님의 정원 첫째 줄에는 꽃들의 총 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 각 꽃이 피는 날짜와 지는 날짜가 주어진다. 하나의 날짜는 월과 일을 나타내는 두 숫자로 표현된다. 예를 들어서, www.acmicpc.net 원트에 자력솔 성공했다! 채점 돌아갈 때 심장이 넘 떨렸다... 내가 구현을 깔끔하게 잘 못짜는 편이라 코드가 너무 길어지기도 했고 내가 생각한대로 딱! 구현하려다보니 뭔가 꽉 막힌 구현이 된 것 같다. 어제 알고리즘 캠프에서 그리디를 배워서 오늘 그리디 문제를 뒤적거리다가 전에 누가 추천해준 문제이기도 하고, 어제 푼 난이도랑 비슷할 것 같아서 골랐다. 그리디 접근 방식을 연..
Codeforces Round 923 (Div. 3) upsolve
·
PS 기록/CP
A. Make it White흰색 타일(W)과 검정색 타일(B) 두 개가 일렬로 쭉 주어지는데, 일자로 한 번 칠해서 모두 흰색으로 바꾸려고 한다. 여기서 칠해야하는 min length를 구하는 문제. B가 처음 나오는 위치 ~ B가 마지막으로 나오는 위치를 찾아 길이를 출력하면 된다.import sysinput = sys.stdin.readline T = int(input()) for i in range(T): n = int(input()) st = list(input().rstrip()) res_min = n res_max = 0 for s in range(n): if st[s] == 'B': res_min = min(s, res_min) ..
700솔 기념
·
PS 기록
딱히 의식하지 않고 평소처럼 문제를 하나 풀었는데 700솔에 레이팅도 1800으로 딱 떨어져서 신기했다. 전부터 쭉 생각해온게, 확실히 PS 할 때 마음 붙일 곳이 있으면 혼자 하는 것보다 훨씬 나은 것 같다. 공부 자극도 받고 동기부여도 되고 나보다 실력이 압도적으로 좋으신 분들에게 양질의 피드백도 받을 수 있다. 주변에 좋은 분들이 많으셔서 질문 하면 우다다 달려와서 대답해주시는 분들이 많은 것 같다. 또한, 항상 작은거에도 칭찬해주시는 우리 스터디 그룹원들에게도 감사드린다..!! 고수분들이 이룬 것에 비하면 별거 아닌 자취일수도 있지만 뉴비들도 힘이 나게 응원해주신다. 그래서 어떤 문제나 특정 알고리즘에 막혔을 때 좌절하기 보다 좀 더 문제를 붙들고 이리저리 시도해보는 태도를 갖출 수 있었다. 이제..
Solved.ac Grand Arena Party Div 2. (Onsite) 후기 [24.02.03]
·
PS 기록/CP
첫 오프라인 개인 대회를 solved.ac에서 주최하는 그랜드 아레나 파티로 시작하게 되었습니다! 무척 특별하고 의미있는 경험이라서 후기를 적어봅니다.학기 중에 스케줄도 많고 졸업 준비를 하느라 바쁜 와중에 오프라인 대회를 경험하고 싶어서 아레나에 자주 참여했습니다. 아마 개근은 못했을텐데 자주 참여한 덕분에  5회 이상 참가 조건(맞나?)으로 초청받을 수 있었습니다.PS를 하면서 오프라인에 아는 분이 있는 것도 아니고, CP에 자신이 있는 것도 아니고... 경험도 부족한 제가 왜 이렇게 PS에 동기부여가 됐는지는 모르겠지만 Solved.ac 를 통해서 PS에 더 쉽게 접근할 수 있었고 여기까지 오게 된 것 같습니다! (무한한 감사를 드립니다...)처음 초청 메일을 받았을 땐 깜짝 놀랐고, 딱히 아는 분..
[신촌 ICPC 알고리즘 캠프] 최단거리 알고리즘 (24.01.22)
·
PS 기록/Algorithm
해당 수업에서 최단거리를 구하는 여러 가지 알고리즘에 대해 간단히 리뷰했다. 0-1 BFS, 다익스트라, 벨만포드 정도를 간단하게 알려주셨다. 직접 해당하는 알고리즘의 문제를 풀면서 배운 점을 적어놓으려고 한다. 13549 - 숨바꼭질 3 (G5)https://www.acmicpc.net/problem/13549이 문제는 아마도 저번 여름 캠프때 나왔던 것 같다. 이미 풀려있는 문제여서 다시 C++으로 풀어보면서 재제출했다.사실 내게 다익스트라는 골드 하위 문제 날먹 알고리즘 정도였는데.. 한 때 스트릭 용으로 G4~G5 정도의 기본 다익 문제만 푼 적이 있다. 그런데 이렇게 연습해도 응용 문제가 되면 헷갈리는 것 같다. 아직 경험이 부족해서 그런가보다. 그래프의 형태가 기본 그래프와 달라지거나, 특수한..
알고리즘 스터디 기록 24.01.06
·
PS 기록/Algorithm
23년 여름 대회 참가를 위해서 급조(?)한 팀이 같은 뜻을 가지고 오래 지속되어 기쁘다. 대회 이후에도 쭉 같이 스터디를 하고 내용을 기록하고 있다. 다만 블로그에 전부 올리기는 무리라서.. 지금까지 한 번도 안올렸는데, 중간 점검 차원에서 블로그에 포스팅하게 되었다. 아무래도 우리 학교는 알고리즘보다 개발 동아리/개발쪽 행사들이 메인인 분위기라서 같이 알고리즘 공부할 사람을 찾는 게 어렵다. 그나마 찾으려고 하면 거의 졸업할 때 쯤 코테를 준비하느라 효율적으로 몇문제 푸시는 분들 정도? 그동안 교내 자율 스터디에 조금씩 참여했었는데 다들 하루 한문제 인증만 하는 식이고, 알고리즘에 대해서 더 공부하거나 같이 이야기를 나누거나 하는 일은 없었다. 아무래도 알고리즘에 재미를 붙이고 쭉 이어나가는 사람은 ..
Codeforces - Problemset (rating 1000-1400) 문제 밀기
·
PS 기록/CP
더보기 1851C- Tiles Comeback (1000) https://codeforces.com/problemset/problem/1851/C Problem - 1851C - Codeforces codeforces.com Tag : Greedy 1850F - We Were Both Children (1300) https://codeforces.com/problemset/problem/1850/F Problem - 1850F - Codeforces codeforces.com Tag : Bruteforce, Implementation, Math, Number Theory 이 문제는 본 대회 때 시간이 부족해서 못 푼 문제이다. 아마 내 기억상으로 문제 좀 읽..