dj035's PS Diary

dj035's PS Diary

  • 분류 전체보기 (93)
    • 일상 (7)
    • PS (9)
      • DP (20)
      • Greedy (3)
      • Math (5)
      • Ad-hoc & Constructive (7)
      • Tree (1)
      • Graph Theory (5)
      • Inplemention (2)
      • Search (2)
      • Two Pointers (1)
      • Data Structures (2)
      • Segment Tree (2)
      • Range Queries (2)
      • Geometry (1)
      • BaekJoon Practice (4)
      • Divide & Conquer (1)
    • Math (0)
      • My math studying (0)
    • Contest (19)
      • KOI (1)
      • NYPC (0)
      • Codeforces (17)
      • AtCoder (0)
      • 블롭컵 (1)
    • 수능 (0)
      • 일지 (0)
  • 홈
  • 태그
  • 방명록
RSS 피드
로그인
로그아웃 글쓰기 관리

dj035's PS Diary

컨텐츠 검색

태그

백준 Constructive dp 큐브의 다이나믹한 코딩방 Graph Theory 수학 Codeforces KOI Greedy div3 CodeForce BOJ Union-find PS 일지 버추얼 매일 돌리기 프로젝트 baekjoon 고등부 구간쿼리 2번 2020 December

최근글

댓글

공지사항

아카이브

BOJ 19568 : 직사각형

https://www.acmicpc.net/problem/19568 이 문제를 풀기 전, 약 팔기 문제를 먼저 풀고 오는 것을 추천한다. 약 팔기 아이디어를 2D로 확장시킨 문제이다. (15,15)를 중심으로 1, 15, 15^2, 15^3을 상하좌우로 한 줄에 펼쳐놓으면 50000 이상까지 찾을 수 있다. 코드

자세히보기
블롭컵 개최 후기

이번 2월에 나는 비요뜨(gunwookim)과 함께 블롭컵을 개최하였다. -문제별 후기 미리 말하지만, 제가 내지 않은 문제들은 후기를 제대로 하지 못하는 점에 대해 양해 부탁드립니다..ㅠㅠ A. blobnom 비요뜨가 낸 문제다. 잘 만들어서 꼭 내고 싶다 하길래 그냥 내게 냅뒀다. 이 문제는 원래 B번이었는데, 예전 A가 더 어렵다는 판단이 많아서 얘가 A가 되고 예전 A가 B번으로 갔다. 지문을 쓸 때 예전에 어떤 검수자가 보내준 짤(blobnomnomnom...)이 생각나서 그걸 컨셉으로 지문을 썼고, 쓰는데 매우 힘들었던 걸로 기억한다.... 대회 시작했을 때 다들 저걸 틀려서 데이터가 잘못되었을까봐 조마조마했었다. 다행히 다들 코너 케이스에 의해 WA를 받은 것이었다. 검수진 중 대다수가 이 ..

자세히보기
BOJ 18122 : 색깔 하노이 탑

문제 링크 그림을 그리면서 관찰을 해보자. 먼저 n번째 원판들이 1->3으로 갈 때 옮기는 횟수는 n=1일 경우 3, n>1일 경우 2^(n+1)임을 알 수 있다. 그렇다면 이를 n번째 원판들까지 있다고 할 때 옮기는 총 횟수를 식으로 나타내보자. 2^(n+1)+2^n+2^(n-1).....+2^3+3 = 2^(n+1)+2^n+2^(n-1).....+2^3+2^2+2^1+2^0-4 = 2^(n+1)+2^n+2^(n-1).....+2^3+2^2+2^1+2^0+1-5 = 2^(n+2)-5 가 된다. 이제 이걸 계산해주면 되는데, 아주 큰 수를 계산한 나머지를 요구한다. 큰 수 계산, 거듭제곱 계산에는 Python이 더 유리하므로 파이썬으로 풀었다. C++로 한다면, n의 최대가 10^6이므로 그냥 O(n)으..

자세히보기
BOJ 2516 : 원숭이

https://www.acmicpc.net/problem/2516 2516번: 원숭이 첫째 줄에는 원숭이들의 수를 나타내는 하나의 정수 N이 주어진다. 단, N은 3이상 100,000이하의 정수이다. 둘째 줄부터 N개의 줄에는 1번부터 번호순서대로 각 원숭이에 대해 앙숙관계에 있는 원숭 www.acmicpc.net 신기한 그리디 문제다. 모든 원숭이를 한 우리에 모아두고 앙숙관계가 2마리 이상인 원숭이들을 다른 곳으로 옮겨놓는 방식으로하면 된다. i) 옮길 원숭이가 없다면 모든 원숭이에 대해 같은 우리에 앙숙관계인 원숭이가 1마리 이하임을 의미하므로 문제의 답을 찾을 수 있다. ii) 옮기는 경우가 있다면 옮기고 나서 앙숙관계인 원숭이가 1개 이상 줄어든다. 그러므로 이런 상황은 통틀어서 총 3n번까지 ..

자세히보기
BOJ 10836 : 여왕벌

www.acmicpc.net/problem/10836 진짜 쉬운 문제. 관찰을 하면 바로 해가 떠오르는 문제이다. 이게 왜 초등 4번? (i, j) (i>0 && j>0)인 칸들은 자신의 바로 위의 칸과 같다는 사실을 관찰하면 풀린다. 고등부에 있는 여왕벌은 차원이 다르게 미쳤다 #include #define sanic ios_base::sync_with_stdio(0) #define MOD 1000000 using namespace std; typedef long long ll; typedef pair p; const ll MEM = 4006; const ll INF = 1e9+7; ll n,m,d,t; ll dp[MEM]; int main() { sanic; cin.tie(0); cout.tie(0)..

자세히보기

  • 2025-03-14 PS

    수 고르기 (S4)어차피 K개의 수를 어떻게 고르든 빼는 값은 변하지 않으므로 배열에서 가장 큰 원소 K개를 골라주면 된다. Code : https://github.com/djayy035/dj035_PS/blob/main/Baekjoon/20186.cpp꿀 따기 (G5)벌집이 맨 왼쪽, 맨 오른쪽, 가운데인 경우를 나누어서 풀어주면 된다.가운데인 경우 벌집은 맨 왼쪽과 오른쪽을 제외한 최댓값이 있는 곳에 배치한다. Code : https://github.com/djayy035/dj035_PS/blob/main/Baekjoon/21758.cpp달려달려 (G4)dp(i, j) = i분에 피로도 j일때 최대로 멀리 갈 수 있는 거리쉬는 경우와 뛰는 경우를 나누어서 식을 세우면 된다. 쉴 때 피로도가 무조건 0..

    2025.03.14 20:37
  • 2025-03-13 PS

    매직스퀘어 (S5, K512)그냥 조건에 맞는대로 짜면 된다. 주의해야 할 점은 구현할 때 숫자가 겹치는지 확인 할 때 배열 크기가 충분한지를 잘 확인해야한다. Code : https://github.com/djayy035/dj035_PS/blob/main/Baekjoon/15739.cpp스케이트 연습 (S4)속도는 마음대로 올릴 수 있으나 마음대로 내릴수는 없고 처음과 끝 모두 속도가 0이어야 하므로 끝점서부터 시작하여 각 지점에서 낼 수 있는 최대 속도를 구해준다.  Code : https://github.com/djayy035/dj035_PS/blob/main/Baekjoon/28324.cpp 대피소 (S4)N이 매우 적으므로  K=1, 2, 3에 따라 그냥 모든 경우의 수를 다 돌아보면 된다. C..

    2025.03.14 00:57
  • 2025-03-12 PS

    스트릭 채우기용 : 26711 https://www.acmicpc.net/problem/26711그냥 큰 수 덧셈. 파이썬을 이용해서 풀어주었다. 그닥 중요한건 아니라서 코드는 따로 안 올림타일 교체 (17622, G3)https://www.acmicpc.net/problem/17622k = 0이때는 올바른 입구로 들어가는지 확인하고 트랙 따라서 가면서 마지막에 올바른 출구로 나가는지 확인해주면 된다. 저 강조 표시해둔 부분이 굉장히 빼먹기 쉬워서 생각보다 어려웠다. 최대 N^2칸을 지날 수 있으므로 시간복잡도는 O(N^2).k = 1N≤50이기 때문에, 모든 칸을 다 한번씩 바꿀 수 있는 형태로 바꿔주면서 되는지 일일이 확인하고 최단 경로를 구하는 방법이 통한다. 이 방법은 모든 칸(N^2)을 한번씩 ..

    2025.03.13 00:40
  • 오랜만입니다.

    한동안 입시때문에 유기했던 PS를 다시 시작해볼까 합니다. 블로그도 꾸준히 쓰려고 합니다. 감사합니다.

    2025.03.12 19:56
  • .

    이젠 수능을 준비해야 할 때가 진짜 온 것 같아서 PS를 접고 수능 공부를 하고 있다. 남는 시간을 활용해서 PS 문제 하나씩 풀까 생각 중이다.

    2022.11.16 11:16
티스토리
© 2018 TISTORY. All rights reserved.

티스토리툴바