목록전체 글 (111)
lmlmlm
https://www.acmicpc.net/category/detail/4252 '금주 2주째라 창작활동에 문제있음' 팀으로 UCPC 2024에 출전했다. (10솔)팀원은 junseo, thak00, nick832 A. 체육은 수학과목 입니다 [+00:00:41, nick832] 직사각형 안에 최대한 큰 원을 넣으면 되는 문제.50 * min(A, B)가 답이다. 여담으로 나의 이 문제 제출은 41초가 걸렸기에 퍼솔을 노릴만 했다.하지만 실제 퍼솔은 +29초이고 나는 2번째...어떻게 29초만에 A를 풀지? J. 동전 쌍 뒤집기[+00:32:57, thak00] 한 번 동전을 뒤집으면 홀수 번째와 짝수 번째의 같은 면 동전이 같이 뒤집히게 된다.따라서 (홀수 번째의 뒷면의 수) = (짝수 번째의 뒷면의 ..
https://www.acmicpc.net/category/detail/3224할만한 셋을 훑어보다가 이 셋을 발견했는데 괜찮아보여서 풀어봤다.3시간에 ABCDEGH만 풀었는데, F를 뭔가 시간에 쫓겨서 구현을 다 못한게 아쉽다.쉬운 것부터 살펴보자. (백준 기준) C. Coffee Cup Combo i번째 수업에서 잠을 자려면 i번째, i - 1번째, i - 2번째 수업 모두에서 커피를 뽑을 수 없어야 한다.단순하게 이를 체크해서, 잠을 안 자는 수업의 수를 세주면 된다. D. Disc District 상당히 웃긴 문제인데, x^2 + y^2을 최대한 r^2에 가져다 붙이면 된다.그러면...? (r, 1)이 제일 가깝다. H. Highest Hill h[j]가 peak가 되려면, 왼쪽으로 몇개와 오른쪽..
https://codeforces.com/contest/1987F 못 푼건 억까다.아침에 일어나서 커피 한잔 하고 Morning clarity 상태로 푸니 풀린다. A. Upload more RAM K초에 1GB만 올릴 수 있으니, 1, K + 1, 2K + 1, ...에 올릴 수 있다.따라서 (N - 1) * K + 1 B. K-Sort a[i] > a[i + 1]이라면 그만큼 a[i + 1]을 증가시켜줘야 한다.그러면 증가횟수는 우선 sum(max(0, b[i] - b[i + 1]))이다. (단, b[i] = max(a[0], a[1], ...a[i]))이때 한 번 increase할 때마다 1의 추가비용이 있으니 MAX(b[i] - b[i + 1])을 더해주어야 한다. C. Basil's Garden..
https://codeforces.com/contest/1989A에서부터 2번 꼬이고 시작한... 흠...E 풀고 F는 감이 잘 안 잡혀서 그냥 딴거하러 갔다. A. Catch the Coin Monocarp의 최적 플랜은 코인을 향해 (+1, -1) 혹은 (-1, -1)로 이동하는 것이다.코인이 (p, q)에 위치했을 때 Monocarp이 x = p에 도달하는 순간을 보면 (단, 편의상 p >= 0)-> 코인은 (p, q - p + 1), Monocarp은 (p, -p)에 위치하게 된다.따라서 q - p + 1 >= -p만 성립하면 되고, q >= -1이 Monocarp이 도달가능한 조건이다. B. Substring and Subsequence 답이 되는게 S라고 하자.그러면 S의 일부는 정확히 a와..
https://codeforces.com/contest/1982 전체적으로 난이도가 평소보단 조금 쉬워보인다.버추얼 다 끝내고 이걸 작성하면서 E에 추가제출을 했더니 패널티가 안좋아졌다. 흠...;; A. Soccer (x1 > y1) == (x2 > y2)를 확인해주면 된다. B. Collatz Conjecture 일단 K가 만약에 엄청나게 크다면, 결국 x는 (1, 2, ... y - 1)을 반복하는 지경에 이를 것이다.만일 저 상태에 이른다면, 그냥 K %= (y - 1)처리를 해주어도 문제가 안 될 것이다. divide by y가 되는 순간은 cnt = (y - x % y)번 operation을 실행한 다음이다.0) x = 1이라면 우선 위에서 설명한 것처럼 K %= (y - 1) 처리를 해준다...
https://codeforces.com/contest/1981 A. Turtle and Piggy Are Playing a Game 결국 piggy가 최고 점수를 원한다고 했을 때, p를 항상 소수로 뽑을 것이다.즉, 점수는 소인수의 개수가 될 것이다.이때 2L B. Turtle and an Infinite Sequence m초 후의 n은 [n - m, n + m] 범위 내를 모두 OR한 것과 같다.따라서 모든 비트에 대해서 [n - m, n + m] 내에 켜진 경우가 존재하는지를 찾으면 된다.즉, 2^i로 나눴을 때 홀수가 되는 경우가 있는지 찾으면 되고1) n - m을 2^i로 나눈 것과 n+ m을 2^i로 나눈 것의 결과가 다르다.2) n - m을 2^i로 나눈게 홀수다 C. Turtle and..

https://codeforces.com/contest/1979 제발 안 터지게 해주세요 A. Guess the Maximum 생각해보면 굳이 많이 차이나는 (i, j)보다는 (i, i + 1)을 뽑는게 Bob에게 항상 이득이다.따라서 모든 max(a[i], a[i + 1])보다 K가 작으면 되므로 MIN(max(a[i], a[i + 1])) - 1이 답이ㅏㄷ. B. XOR Sequences 제일 처음으로 다른 bit를 찾으면 1 C. Earning on Bets 총 내가 쓰는 코인의 개수인 Total이 결정되어 있다고 가정하자.그러면 각 x에는 최소한 Total / k[x] + 1을 배정해주어야 한다.이때 SUM(Total / k[x] + 1) 그러면 실제 총합인 real_Total이 총합이 되는데 ..
https://codeforces.com/contest/1975이 정도 퍼포를 또 해야 2600.... 쉽지 않다. A. Bazoka and Mocha's Array operation을 몇 번 가하든 간에 결국 0번 혹은 1번 가한 상태랑 똑같다.따라서 모든 N가지 경우를 확인해보면 된다. B. 378QAQ and Mocha's Array 편의상 a를 정렬하자.a가 beautiful 하다면, a[i]와 a[j] 중 하나는 반드시 a[0]와 동일하다. (만일 아니라면, a[0]는 나눠질 수 없음)그러면 a[0]로 나뉘지 않는 애들을 모아 g = (a[x] % a[0] != 0인 모든 a[x]의 gcd 값)이라고 하자.g % a[j] == 0인 j가 존재해야만 yes가 될 수 있다. C. Chamo and ..
https://atcoder.jp/contests/arc178/tasks조오금 말렸지만 D를 시간 내에 다행히 풀어냈다. A. Good Permutation 2 우선 불가능한 경우는1) A[i] = 1이 있는 경우2) A[i] = N이 있는 경우특정한 A[i] 길이의 permutation이 없다는 뜻은 이들 중 하나가 뒤쪽으로 밀려났다는 뜻이다.혹은 A[i] + 1이 반드시 1 ~ A[i]에 존재한다고 볼 수 있다. (Lexicographically smallest라는 조건에 의해)따라서 A를 모두 정렬한 뒤, 기본 I = {1, 2, ... N} 배열에 대해 swap(A[i], A[i] + 1)을 차례대로 진행하면 된다. B. 1 + 6 = 7 신나는 케이스 워크를 각각한다. WLOG A1 >= A2..
https://codeforces.com/contest/1920 버추얼 한 번 돌아봤다. A. Satisfying Constraints 간단하게 a = 1, a = 2 정보로 상한과 하한을 구해두고, a = 3의 정보를 모두 제외하면 된다. B. Summation Game 어차피 a가 모두 양수이기에 Bob은 항상 제일 큰 X개를 -1로 곱해버릴 것이다.따라서 Alice가 작은 숫자를 지워버린다면 그냥 합만 작아지는 꼴이므로, 항상 큰 숫자만 지울 것이다.즉, 제일 큰 i(a를 정렬해두고 prefix_sum을 사용하면 모두 확인해볼 수 있다. C. Partitioning the Array partition에 쓰이는 K는 모두 N의 약수이다. 그러면 각각의 K에 대해 모든 i에 대해서 a[i + n / k..