본문 바로가기
반응형

전체 글195

2019년 정보올림피아드 필기 초등부(1~5) 2019년 정보 올림피아드 1차 필기 초등부 문제 풀이 입니다. 1번 (a, b), (b, c), (c, a) 총 3번 비교하면 됩니다. 조합을 구하는 문제로 초등부 문제에서는 3개중 2개를 비교하지만 중등부, 고등부에서는 계산을 직접 해야 합니다. $$ nC_r = _3C_2 = \frac{3 * 2}{2} = 3 $$ 2번 5명의 친구들을 2명씩 묶는 문제 입니다. 즉 조합을 이용하여 2명씩 묶는 것은 쉽게 구할 수 있습니다. 5 * 4 / 2 = 10이 됩니다. 10개의 조합이 나오니까 한쌍씩 악수를 한다면 10분이 걸립니다. 여기서는 5명이기 때문에 한 번에 두 쌍이 악수를 하고 한 명이 남습니다. 즉 2쌍씩 악수할 수 있으므로 총 5분이 걸립니다. 3번 5개의 원을 흰색 또는 회색으로 칠해야 합.. 2024. 3. 12.
파이썬 음수의 나머지 연산 나머지 연산은 프로그래밍에서 정말 많이 사용하는 연산자 입니다. 나머지 연산자(%)에 대해서 아직 잘 모른다면 아래 링크를 통해 확인 바랍니다. https://wikidocs.net/214915 08. 나머지 연산 [TOC] 실생활에서는 잘 사용하지 않지만 프로그래밍에서 많이 사용하는 연산중 하나가 나머지 연산 입니다. 나머지 연산은 모듈로(Modulo) 연산 이라고도 합니다. 나머지 연… wikidocs.net 음수를 양수로 나머지 연산하기 나머지 연산자를 활용하지만 아마도 음수의 나머지 연산은 어떻게 동작하는지 생각해 보지 않았을 것입니다. -21이라는 숫자를 5로 나눈 나머지를 구한다고 하겠습니다. 답이 무엇일지 생각해 보시기 바랍니다. a = -21 b = 5 print(a % b) a라는 숫자를.. 2024. 3. 11.
[백준 17619]2019 정올 2차 중등부 "개구리 점프" 문제 출처 : https://www.acmicpc.net/problem/17619 17619번: 개구리 점프 첫 번째 줄에 통나무 개수 N과 질문의 개수 Q가 주어진다. 다음 N개의 줄에 각 통나무에 x1, x2, y의 세 정수 좌표가 주어진다. 주어진 통나무는 두 점 (x1, y)와 (x2, y)를 잇는 형태이다. (x1 < x2) 모든 www.acmicpc.net 이 문제는 2019년 정보올림피아드 2차 대회 중등부 2번 문제 입니다. 문제 이해하기 이 문제는 점프를 얼마나 해서 이동할 수 있는지 묻는 문제가 아닙니다. 오직 이동이 가능한지, 불가능한지 묻는 문제 입니다. 즉 높이는 아무 상관 없이 길이가 겹쳐지는지를 따져서 연결 여부만 알 수 있으면 됩니다. 문제에서는 이렇게 길이와 높이가 나와 있.. 2024. 3. 7.
[백준 17615] 2019 정올 2차 초등부 "볼 모으기" 문제 출처 : https://www.acmicpc.net/problem/17615 17615번: 볼 모으기 첫 번째 줄에는 볼의 총 개수 N이 주어진다. (1 ≤ N ≤ 500,000) 다음 줄에는 볼의 색깔을 나타내는 문자 R(빨간색 볼) 또는 B(파란색 볼)가 공백 없이 주어진다. 문자열에는 R 또는 B 중 한 종류만 주 www.acmicpc.net 이 문제는 2019년 정보 올림피아드 2차 대회 초등부 2번 문제 입니다. 알고리즘 이해하기 문제에는 제약 조건이 많기 때문에 잘 읽어봐야 합니다. 한가지 색깔만 옮길 수 있습니다. 처음에 빨간색을 옮기면 계속 빨간색만 옮겨야 합니다. 하나씩 옮기되, 최대한 멀리 옮겨야 최소 값을 얻을 수 있습니다. 이 두가지를 생각하면서 시뮬레이션 해보면 결국 우리가 .. 2024. 3. 6.
[백준 17618] 2019 정올 2차 중등부 "신기한 수" 문제 출처 : https://www.acmicpc.net/problem/17618 17618번: 신기한 수 평소에 수에 대한 관심이 많은 아이인 민철이는 오늘도 노트에 연필로 수를 더하거나 빼거나 곱하거나 나눠보면서 시간을 보내고 있다. 그러다가 18이라는 수는 신기한 성질을 가진다는 것을 알 www.acmicpc.net 이 문제는 2019년 정보올림피아드 2차 대회 중등부 1번 문제 입니다. 문제 난이도가 높지 않아 다빈치코딩 알고리즘에도 똑같이 작성해 놓았습니다. https://wikidocs.net/232738 02. 신기한 수(정올 2019)[백준 17618] 문제 출처 : [신기한 수](https://www.acmicpc.net/problem/17618) 이 문제는 2019년 정보올림피아드 2차.. 2024. 3. 5.
[백준 19940] 2020 정올 1차 초등부 "피자 오븐"(2) 문제 출처 : https://www.acmicpc.net/problem/19940 19940번: 피자 오븐 각각의 테스트 케이스마다 5개의 정수를 한 줄에 공백으로 구분해서 출력한다. 이 정수는 입력으로 주어진 시간을 만들기 위해서 ADDH, ADDT, MINT, ADDO, MINO 버튼을 누르는 횟수를 출력한 것이다. 최 www.acmicpc.net 피자 오븐 문제를 수학적으로 푸는 방법을 이전 포스팅을 통해 알아보았습니다. https://davincicoding.tistory.com/103 [백준 19940] 2020 정올 1차 초등부 "피자 오븐"(1) 문제 출처 : https://www.acmicpc.net/problem/19940 19940번: 피자 오븐 각각의 테스트 케이스마다 5개의 정수를 .. 2024. 3. 4.
[백준 19940] 2020 정올 1차 초등부 "피자 오븐"(1) 문제 출처 : https://www.acmicpc.net/problem/19940 19940번: 피자 오븐 각각의 테스트 케이스마다 5개의 정수를 한 줄에 공백으로 구분해서 출력한다. 이 정수는 입력으로 주어진 시간을 만들기 위해서 ADDH, ADDT, MINT, ADDO, MINO 버튼을 누르는 횟수를 출력한 것이다. 최 www.acmicpc.net 이 문제는 2020년 정보 올림피아드 초등부 2번 문제 입니다. 문제 이해하기 버튼을 어떻게 누르는 것이 더 적은 횟수로 누를 수 있는지 찾는 문제 입니다. 이런 문제는 직접 계산을 하던가, 알고리즘을 통해 최소 버튼 횟수를 찾는 방법이 있습니다. BFS를 사용하면 버튼의 최소 횟수를 찾을 수 있지만 여기서는 직접 계산하는 방법을 생각해 보겠습니다. 6분 .. 2024. 3. 3.
[백준 19942] 2020 정올 1차 중등부 "다이어트" 문제 출처 : https://www.acmicpc.net/problem/19942 19942번: 다이어트 식재료 N개 중에서 몇 개를 선택해서 이들의 영양분(단백질, 탄수화물, 지방, 비타민)이 일정 이상이 되어야 한다. 아래 표에 제시된 6가지의 식재료 중에서 몇 개를 선택해서 이들의 영양분의 각 www.acmicpc.net 이 문제는 2020년 정보올림피아드 1차 중등부 2번 문제 입니다. 문제 이해하기 단백질, 지방, 탄수화물, 비타민의 최소 영양성분을 넘어서는 최소 가격을 찾으면 되는 문제 입니다. N의 크기가 15로 비교적 작기 때문에 브루트 포스나 백트래킹으로 쉽게 결과를 찾을 수 있습니다. 백트래킹을 통해 문제를 해결해 보겠습니다. 백트래킹에 대해 잘 모른다면 아래 링크를 통해 백트래킹 기법.. 2024. 3. 3.
[백준 17611] 2019 정올 1차 중등부 2번 "직각다각형" 문제 출처 : https://www.acmicpc.net/problem/17611 17611번: 직각다각형 입력의 첫 줄에는 단순직각다각형의 꼭지점의 개수를 나타내는 정수 n(4 ≤ n ≤ 100,000)이 주어지고, 이어지는 n개 줄 각각에 단순직각다각형 꼭지점의 좌표 (xi, yi)가 차례대로 주어진다. 주어지 www.acmicpc.net 이 문제는 2019년 정보올림피아드 1차 대회 중등부 2번 문제 입니다. 문제 이해하기 수평, 수직을 체크하며 가장 겹치는 부분이 많은 곳을 찾는 문제 입니다. 예제 2번을 보며 같이 생각해 보겠습니다. 예제 2번의 좌표를 찾아 표시하면 다음과 같습니다. 가장 겹치는 점이 많은 것은 수평 선분일 때 6개이고, 수직 선분은 2개 입니다. 따라서 출력값은 max(6, .. 2024. 3. 1.
[백준 17613] 2019 정올 1차 고등부 "점프" 문제 출처 : https://www.acmicpc.net/problem/17613 17613번: 점프 T개의 줄에 각각 하나의 정수를 출력한다. 각 줄에 출력되는 정수는 구간 [x, y]안의 수들의 점프넘버들 중 최댓값이다. 각 정수는 입력으로 주어지는 구간의 순서에 맞게 출력되어야 한다. 즉, 첫 www.acmicpc.net 이 문제는 2019년 정보올림피아드 1차 고등부 2번 문제 입니다. 점프를 하면서 해당 위치에 갈 수 있는 가장 짧은 점프 횟수를 찾는 문제 입니다. 여기 까지는 쉽지만 범위 안에 있는 모든 짧은 점프 횟수를 찾아 그중 가장 큰 수를 출력해야 합니다. 문제 이해하기 예제 입력에 있는 3번째 경우를 보겠습니다. 12부터 16사이에 가장 큰 점프 횟수를 찾아야 합니다. 먼저 12에 도.. 2024. 2. 29.
[백준 17610] 2019 정올 1차 중등부 "양팔저울" 문제 출처 : https://www.acmicpc.net/problem/17610 17610번: 양팔저울 무게가 서로 다른 k개의 추와 빈 그릇이 있다. 모든 추의 무게는 정수이고, 그릇의 무게는 0으로 간주한다. 양팔저울을 한 번만 이용하여 원하는 무게의 물을 그릇에 담고자 한다. 주어진 모든 추 www.acmicpc.net 이 문제는 2019년 정보 올림피아드 1차 중등부 1번 문제 입니다. 양팔 저울을 가지고 만들 수 있는 모든 무게를 찾아 불가능한 경우의 수를 출력하는 문제 입니다. 따라서 1부터 모든 추의 무게를 따져가며 만들 수 있는지, 없는지 확인해야 합니다. 이런 문제는 DP를 통해 풀 수 있습니다. DP의 배낭 문제를 통해 이 문제의 해결 방안을 생각해 볼 수 있습니다. 경우의 수를 따져.. 2024. 2. 23.
[백준 17612] 2019 정올 1차 고등부 "쇼핑몰" 문제 출처 : https://www.acmicpc.net/problem/17612 17612번: 쇼핑몰 입력의 첫 줄에는 2개의 정수 N(1 ≤ N ≤ 100,000)과 k(1 ≤ k ≤ 100,000)가 주어진다. 다음 줄부터 N개의 줄에 걸쳐 고객 N명의 정보가 줄 맨 앞의 고객부터 맨 뒤 고객까지 순서대로 주어진다. i번째 www.acmicpc.net 이 문제는 2019년 정보 올림피아드 1차 고등부 1번 문제 입니다. 문제 이해하기 이 문제는 어렵지는 않지만 복잡한 문제 입니다. 쇼핑몰에 들어가는 순서 따로, 그 고객의 id를 알아야 하고 고객이 사는 물건의 개수만큼 시간을 계산하여 계산대에 넣어주어야 합니다. 예제 입력을 가지고 생각해 보겠습니다. 예제에는 10명의 고객이 있고 계산대는 총 3개.. 2024. 2. 22.
[백준 17609] 2019 정올 초등부 1차 "회문" 문제 출처 : https://www.acmicpc.net/problem/17609 17609번: 회문 각 문자열이 회문인지, 유사 회문인지, 둘 모두 해당되지 않는지를 판단하여 회문이면 0, 유사 회문이면 1, 둘 모두 아니면 2를 순서대로 한 줄에 하나씩 출력한다. www.acmicpc.net 이 문제는 2019년 정보 올림피아드 1차 초등부 2번 문제였습니다. 회문이란? 회문 또는 팰린드롬이라 불리는 문자열은 드라마 이상한 변호사 우영우를 생각하면 됩니다. 기러기, 토마토, 스위스, 인도인, 별똥별… 이런 단어들처럼 똑바로 읽어도 거꾸로 읽어도 같은 문자열을 회문 이라고 합니다. 유사 회문? 이 문제는 회문을 한 단계 넘어 유사회문이라는 것을 찾아야 합니다. 유사회문은 문자열에서 한 문자를 삭제해서 .. 2024. 2. 20.
[백준 28323] 2023 정올 2차 초등부 "불안정한 수열" 문제 출처 : https://www.acmicpc.net/problem/28323 28323번: 불안정한 수열 $N$개의 자연수가 좌우 일렬로 놓여 있다. 왼쪽에서 $i$ ($1 \le i \le N$)번째에 놓여 있는 자연수는 $A_i$다. 여러분은 이 중 몇 개의 자연수를 원하는 만큼 고를 수 있다. 단, 아무 자연수도 고르지 않 www.acmicpc.net 이 문제는 2023년 정보올림피아드 초등부 2차 1번 문제 였습니다. 수열 A에서 이웃한 자연수의 합을 구했을 때 항상 홀수인 수열 B를 구하는 문제 입니다. 문제를 어떻게 풀어야 할지 감이 잘 잡히지 않는다면 조합을 구하고 그 중 답이 있는지 확인하면 됩니다. 그럼 100점은 맞지 못하더라도 부분 점수를 얻을 수 있습니다. 정보 올림피아드는 시.. 2024. 2. 19.
싱가포르 해리포터 포비든 포레스트(4) 2024.02.14 - [여행/싱가포르] - 싱가포르 해리포터 포비든 포레스트(1) 2024.02.15 - [여행/싱가포르] - 싱가포르 해리포터 포비든 포레스트(2) 2024.02.14 - [여행/싱가포르] - 싱가포르 해리포터 포비든 포레스트(3) 1편 ~ 3편에 이어 4편 시작하도록 하겠습니다. 애크로맨툴라(Acromantula) 해리포터에 등장하는 거대 거미 입니다. 이건 작은 거미이고 뒤쪽에 거대 거미가 등장합니다. 거미들이 무섭거나 징그럽게 느껴져야 하는데 너무 가짜인게 티나서 담담하게 구경했습니다. 해리포터가 운전한 차를 거미들이 뒤엎고 있는 장면이 그대로 재현 되었습니다. 아라고그(Aragogue) 해그리드가 학생시절 알을 구해 호그와트에서 부화시켰다는 거미 아라고그 입니다. 해그리드는 은.. 2024. 2. 18.
싱가포르 해리포터 포비든 포레스트(3) 2024.02.14 - [여행/싱가포르] - 싱가포르 해리포터 포비든 포레스트(1) 2024.02.15 - [여행/싱가포르] - 싱가포르 해리포터 포비든 포레스트(2) 1편, 2편에 이어 해리포터 시리즈 3편 입니다. 이번 편에는 해리포터에 등장하는 마법이 많이 등장합니다. 엑스펙토 패트로눔(Expecto Patronum) 디멘터를 퇴치하는 마법 입니다. 해리포터의 주문으로 패트루누스를 부른 것을 기억하고 있었는데 이 장면을 볼 수 있습니다. 유니콘 지나가다 볼 수 있는 유니콘 입니다. 흰색의 어른 유니콘이 새끼 유니콘을 데리고 다니며 왔다갔다 합니다. 어떤 장면이었는지 기억이 나지 않았습니다. 어설픈 연출이긴 했지만 그래도 유니콘의 등장에 아이들이 좋아했습니다. 인센디오(Incendio) 다음으로 마법.. 2024. 2. 17.
싱가포르 해리포터 포비든 포레스트(2) https://davincicoding.tistory.com/92 싱가포르 해리포터 포비든 포레스트(1) 해리포터 포비든 포레스트 싱가포르에 새로 생긴 해리포터 포비든 포레스트(Harry Potter Forbidden Forest)에 다녀왔습니다. https://hpforbiddenforestexperience.com/singapore/ Harry Potter: A Forbidden Forest Experience in Si davincicoding.co.kr 1편에 이어 2편을 소개하겠습니다. 포비든 포레스트란? 해리포터 포비든 포레스트는 해리포터 1편인 해리포터와 마법사의 돌 챕터 15장의 제목이라고 합니다. 해그리드가 살던 오두막 뒤편의 오래된 숲으로 위험한 생물들이 많아 호그와트 학생들에게는 출입.. 2024. 2. 15.
싱가포르 해리포터 포비든 포레스트(1) 해리포터 포비든 포레스트 싱가포르에 새로 생긴 해리포터 포비든 포레스트(Harry Potter Forbidden Forest)에 다녀왔습니다. https://hpforbiddenforestexperience.com/singapore/ Harry Potter: A Forbidden Forest Experience in Singapore 🌑A nighttime experience arrives near Singapore filled with magical creatures from the Harry Potter™ and Fantastic Beasts™ films. hpforbiddenforestexperience.com 이제 생긴지 얼마 안되었기 때문에 아는 분이 많지 않을 것 같네요. 2024년 2월 4일.. 2024. 2. 14.
[백준 28324] 2023 정올 초중고 2차 스케이트 연습 문제 출처 : https://www.acmicpc.net/problem/28324 28324번: 스케이트 연습 여러분은 주어진 스케이트 코스에서 스케이트를 연습하려고 한다. 이 코스는 시작 지점, $N$개의 중간 지점, 그리고 도착 지점으로 구성되어 있다. 이 연습은 시작 지점에서 $0$의 속력으로 출발 www.acmicpc.net 이 문제는 2023년 정보올림피아드 2차 대회 초등부 2번, 중등부 1번, 고등부 1번으로 출제된 문제 입니다. 문제를 읽어보면 왠지 DP의 냄새가 나는 문제 입니다. 하지만 잘 생각해보면 굳이 DP를 사용하지 않고도 문제를 해결할 수 있습니다. 그리디로 탐욕적으로 문제를 해결해 보겠습니다. 문제 이해하기 이 문제를 해결하기 위해서 알아야 하는 것은 크게 두가지 입니다. 속력.. 2024. 2. 13.
싱가포르 여행 구정엔 피하세요 연휴를 맞이하여 싱가포르 여행을 가려 한다면 구정 연휴는 피하는 것을 추천 드립니다. 마리나 베이 드론쇼 처음에는 좋았습니다. 구정을 맞이하여 싱가포르 마리나베이샌즈에서 드론쇼를 한다고 했으니까요 우연찮게 일정이 맞아 드론쇼를 보기로 했었습니다. https://mothership.sg/2024/01/marina-bay-drone-show-cny-2024/ Dragon made up of 1,500 drones at Marina Bay on 6 nights in Feb. 2024 to usher in year of the dragon At 8pm on Feb. 6, 10, 11, 16, 17 and 18. mothership.sg 하지만 정작 2월 6일 드론쇼를 기대했지만 기상 문제로 공연이 취소 되었습니.. 2024. 2. 12.
마리나베이샌즈에서 슈퍼트리 보러 가는길 마리나 베이 샌즈(Marina Bay Sands)에서 가든스 바이 더 베이(Gardens by the Bay)에 있는 슈퍼 트리(Super Tree)를 보러 가는 길에 대해 알아보겠습니다. 마리나베이샌즈 쇼핑몰 가는 방법 사실 두 장소의 위치가 근처라 쉽게 갈 수 있는데 처음 와봤다면 어떻게 가야할지 궁금할 수 있습니다. 제가 바로 그랬거든요... 분명 지도보고 밖을 통해 갔었는데 나중에 또 방문 했을 때 아무렇게나 가다보니 마리나 베이에서 쉽게 가는 방법이 있었습니다. 먼저 역은 베이프론트(BayFront)역에서 내립니다. 마리나 베이(Marina Bay) 역이 아닙니다. 최근에 가보니 브루노 마스 콘서트에 대한 광고가 있었습니다 3월에는 테일러 스위프트 콘서트가 있는데 4월에는 브루노 마스 콘서트가 .. 2024. 2. 11.
파이썬 문자열에서 공백 or 문자 제거 파이썬 문자열을 다루다보면 문자열에서 특정 문자나 공백을 제거하고 싶은 경우가 있습니다. 이 때 사용하는 함수가 strip 함수 입니다. 간단하게 사용 방법을 알아보겠습니다. strip 함수 say = ' hello!! ' print(say) print(say.strip()) say 라는 변수에 앞, 뒤 공백이 존재하는 문자가 있습니다. 이 문자를 출력하면 다음과 같이 출력됩니다. hello!! hello!! 앞과 뒤에 있는 공백이 모두 사라졌습니다. 한가지 예를 더 보여드리겠습니다. 이것은 공식 문서에 있는 예제 입니다. url = 'www.example.com' print(url.strip('cmowz.')) # example strip 함수 안에 지우고 싶은 문자를 넣었고 기존 문자에 있던 c, m.. 2024. 2. 4.
[백준 28216] 2023 정올 초등부 1차 아이템 획득 문제 출처 : https://www.acmicpc.net/problem/28216 28216번: 아이템 획득 $N ≤ 2\,000$, $Q ≤ 2\,000$, $x_i ≤ 1\,000$, $y_i ≤ 1\,000$, $w_i ≤ 10$, 매 순간 자동차의 $x$, $y$좌표는 $1\,000$ 이하이다. www.acmicpc.net 이 문제는 2023년도 정보 올림피아드 1차 초등부 3번 문제로 출제 되었던 문제 입니다. 문제 이해하기 2차원 지도에서 아이템을 모으는 문제로 인접 행렬로 구현하면 될 것 같은 문제 입니다. 하지만 지도의 크기가 20만 입니다. 또한 이동하는 횟수인 Q 역시 20만 입니다. 쉽게 시간복잡도가 20만 * 20만이라는 것을 알 수 있고 시간초과가 예상되기 때문에 인접 행렬로 문제.. 2024. 1. 30.
[백준 28218] 2023 정올 중등부 1차 격자 게임 문제 출처 : https://www.acmicpc.net/problem/28218 28218번: 격자 게임 첫 번째 줄에 세 정수 $N$, $M$, $K$가 공백을 사이에 두고 주어진다. 이후 $N$개의 줄에 걸쳐 #과 .으로만 구성된 길이 $M$의 문자열이 한 줄에 하나씩 주어진다. $1 ≤ i ≤ N$ 과 $1 ≤ j ≤ M$에 대해, $i$ www.acmicpc.net 이 문제는 2023 정보올림피아드 중등부 1차 2번 문제로 출제 되었습니다. 말의 위치가 정해지면 아래로 한칸 가던가, 오른쪽으로 한칸 가던가, K만큼 대각선으로 움직일 수 있습니다. 두 명이 번갈아 이동해 마지막 칸에 누가 먼저 이동하는지를 대결하는 게임 입니다. 게임 이해하기 두 명 모두 최선을 다하기 때문에 매 번 승리할 수 있.. 2024. 1. 28.
[백준 13418] 학교 탐방하기 문제 출처 : https://www.acmicpc.net/problem/13418 13418번: 학교 탐방하기 입력 데이터는 표준 입력을 사용한다. 입력은 1개의 테스트 데이터로 구성된다. 입력의 첫 번째 줄에는 건물의 개수 N(1 ≤ N ≤ 1,000)과 도로의 개수 M(1 ≤ M ≤ N(N-1)/2) 이 주어진다. 입력의 두 번 www.acmicpc.net 이 문제는 최소 신장 트리를 두 번 구성해야 하는 문제 입니다. 최소 신장 트리에 대해 잘 모른다면 아래 링크를 통해 최소 신장 트리에 대해 이해하시기 바랍니다. https://wikidocs.net/207011 05. 최소 신장 트리 MST(Minimum Spanning Tree) 라고 불리는 최소 신장 트리를 이해하기 위해서는 먼저 신장 트리(.. 2024. 1. 27.
[백준 28217] 2023 정올 1차 두 정삼각형 문제 출처 : https://www.acmicpc.net/problem/28217 28217번: 두 정삼각형 첫 번째 줄에는 $1$개의 수를, 두 번째 줄에는 $2$개의 수를, $\dots$, $N$번째 줄에는 $N$개의 수를 아래 그림과 같이 배치한 정삼각형 $A$, $B$가 주어진다. 각 위치에 있는 수는 $0$ 또는 $1$이다. 당신은 www.acmicpc.net 이 문제는 2023년 정보 올림피아드 중등부 1차 1번 문제로 출제된 두 정삼각형이라는 문제 입니다. 정 삼각형을 회전시키거나, 대칭으로 만들어 값을 비교하는 문제 입니다. N의 크기도 크지 않아 특별한 알고리즘을 사용하지 않아도 문제가 해결될 것 같습니다. 다만 회전시키거나 대칭을 만드는 것이 쉽지 않아 보입니다. 이런 문제를 해결하기 .. 2024. 1. 25.
2차원 배열 회전하기 배열의 회전 이해하기 알고리즘 문제를 풀다보면 배열을 회전시켜야 하는 경우가 있습니다. 이런 경우 어떻게 해야 하는지 당황하는 친구들을 위해 배열을 회전하는 방법에 대해 알아보겠습니다. 위 그림과 같이 1부터 9까지의 3 X 3 배열을 시계방향으로 90도 회전을 하면 오른쪽 그림처럼 됩니다. 회전을 눈으로 보면 쉽지만 이것을 직접 배열로 바꾸면 값을 어떻게 바꿔주어야 할지 막막합니다. 이것을 행과 열의 위치로 표현해 보겠습니다. 앞의 수는 i열을 뜻하는 열의 수, 두 번째 수는 j행을 뜻하는 행의 수 입니다. 0, 0 에 있는 수를 0 0 으로 표현한 것입니다. 0번째 행을 확인해보면 각 열의 값이 행의 값으로 바뀌어 있음을 알 수 있습니다. 1행, 2행을 봐도 똑같이 열의 값이 행의 값으로 바뀌어 있습.. 2024. 1. 24.
[백준 11779] 최소 비용 구하기 2 문제 출처 : https://www.acmicpc.net/problem/11779 11779번: 최소비용 구하기 2 첫째 줄에 도시의 개수 n(1≤n≤1,000)이 주어지고 둘째 줄에는 버스의 개수 m(1≤m≤100,000)이 주어진다. 그리고 셋째 줄부터 m+2줄까지 다음과 같은 버스의 정보가 주어진다. 먼저 처음에는 그 버스 www.acmicpc.net 문제 확인 이 문제는 제목에서 알 수 있듯이 최소 비용 구하기 문제와 거의 비슷합니다. 다른점 이라면 이동한 경로를 표시해야 한다는 점입니다. 이동하는 경로를 어떻게 표시 하는지에 어려워 하는 친구들이 있어 그 부분에 대해 알려주기 위해 글을 남깁니다. 다익스트라 알고리즘으로 이 문제를 해결하기 위한다면 최소 비용 구하기부터 확인 하시기 바랍니다. 0.. 2024. 1. 23.
[백준 10844] 쉬운 계단 수 문제 출처 : 쉬운 계단 수 10844번: 쉬운 계단 수 첫째 줄에 정답을 1,000,000,000으로 나눈 나머지를 출력한다. www.acmicpc.net 숫자가 계단수인지 아닌지 확인하며 개수를 센다면 시간초과가 발생할 수밖에 없습니다. 이런 문제를 만나면 직접 경우의 수를 따져보며 문제를 어떻게 풀어야 할지 고민하는게 좋습니다. 예제 입력 확인해보기 예제 입력을 보면 1을 입력 하였을 때 9가 출력 됩니다. 0으로 시작하는 수는 계단수가 아니기 때문에 1부터 9까지의 숫자 아무거나 계단수가 됩니다. 따라서 9가 되는 것입니다. 다음으로 2를 입력하면 17이 됩니다. 왜 17이 되는지 따라가보면 앞서 1을 입력한 숫자들이 계단수가 되기 위해 어떻게 바뀌는지 생각하면 알 수 있습니다. 1은 10이나 1.. 2024. 1. 22.
[백준 13308] 2016 정올 고등부 "주유소" 문제 출처 : 주유소 2023년도 정보올림피아드에도 주유소란 이름의 문제가 있어 혼란스러울 수 있으나 두 문제는 다른 문제 입니다. 2023년도 주유소 문제는 아래 링크에서 확인 가능 합니다. https://davincicoding.tistory.com/9 [백준 28219] 2023 정올 1차 주유소 문제 출처 : https://www.acmicpc.net/problem/28219 28219번: 주유소 KOI 국가는 $N$개의 마을로 이루어져 있다. 각 마을에는 $1$번 마을, $2$번 마을, $\cdots$, $N$번 마을과 같이 번호가 붙어 있다. 그리고 도로가 $ davincicoding.co.kr 2016년도 주유소 문제는 다익스트라 알고리즘으로 해결할 수 있는 문제 입니다. 다만 문제가 기름을.. 2024. 1. 21.
반응형