전체 글 458

[BOJ/Gold 4] 백준 29703 펭귄의 하루(C++)

문제 링크 https://www.acmicpc.net/problem/29703 29703번: 펭귄의 하루 $1$ × $1$ 크기의 정사각형 칸으로 각각 나누어져 있는 $N$ × $M$의 행렬로 표현되는 펭귄 마을이 있다. 펭귄 마을의 정보는 문자 'S', 'H', 'E', 'D', 'F'로 나타난다. E는 천적이 없어 펭귄이 이동해도 괜 www.acmicpc.net 문제 1 × 1 크기의 정사각형 칸으로 각각 나누어져 있는 N × M의 행렬로 표현되는 펭귄 마을이 있다. 펭귄 마을의 정보는 문자 'S', 'H', 'E', 'D', 'F'로 나타난다. E는 천적이 없어 펭귄이 이동해도 괜찮은 안전 구역을 나타내며, D는 펭귄의 천적인 바다표범이 살고 있어 펭귄이 이동할 수 없는 위험 구역을 나타낸다. 그리..

BOJ/Gold 2024.01.22

[메이플 캘린더] 다크 모드에 대응해보자

사용 의도 사실 필요한 건 아니었지만 그냥 다크 모드를 대응하기 위해 어떤 것이 필요한지를 공부하고 싶어서 다크 모드를 적용시켜보았다. 학습 내용 공식 문서에 따르면 다크 테마는 API 29 이상(안드로이드 10) 이상에서 제공되며, 다음과 같은 여러 가지 장점이 있다고 한다. 전력 사용량을 상당히 절약할 수 있음(기기 화면 기술에 따라 다름) 시력이 낮은 사용자와 밝은 빛에 민감한 사용자를 위한 가시성 개선 누구나 어두운 환경에서 쉽게 기기 사용 가능 안드로이드 10 이상에서 다크 테마를 활성화하는 방법은 3가지가 존재한다. 시스템 설정(설정 → 디스플레이 → 테마)을 사용하여 어두운 테마 활성화 빠른 설정 타일을 사용하여 알림 표시줄에서 테마 전환(활성화된 경우) Pixel 기기에서 절전 모드를 선택..

[BOJ/Gold 4] 백준 30797 가희와 여행가요(C++)

문제 링크 https://www.acmicpc.net/problem/30797 30797번: 가희와 여행가요 가희는 도시 시뮬레이션 게임을 하고 있습니다. 이 게임은 나의 도시와 다른 도시들을 연합하여, 나의 도시를 키우는 게임입니다. 가희의 도시에 사는 사람들은 철도만 이용하여 이동합니다. 건 www.acmicpc.net 문제 가희는 도시 시뮬레이션 게임을 하고 있습니다. 이 게임은 나의 도시와 다른 도시들을 연합하여, 나의 도시를 키우는 게임입니다. 가희의 도시에 사는 사람들은 철도만 이용하여 이동합니다. 건설된 철도 노선들을 적절히 이용하여 가희의 도시에서 도시 a로 이동하지 못하면, 사람들은 도시 a와 교류를 하지 못하게 되고, 가희의 도시는 도시 a와 연합할 수 없습니다. 가희는 월드에 있는 도..

BOJ/Gold 2024.01.18

[BOJ/Silver 1] 백준 30090 백신 개발(C++)

문제 링크 https://www.acmicpc.net/problem/30090 30090번: 백신 개발 평소 정보 보안에 관심이 많은 진흥이는 최근 들어 유행하고 있는 컴퓨터 바이러스에 대한 백신을 개발하려고 한다. 바이러스는 $N$개의 문자열로 이루어져 있다고 한다. 진흥이가 열심히 연구 www.acmicpc.net 문제 평소 정보 보안에 관심이 많은 진흥이는 최근 들어 유행하고 있는 컴퓨터 바이러스에 대한 백신을 개발하려고 한다. 바이러스는 N개의 문자열로 이루어져 있다고 한다. 진흥이가 열심히 연구한 결과, 이 바이러스를 처치할 방법은 다음과 같다. 바이러스를 구성하는 N개의 문자열을 적당한 순서를 정하여 하나로 이어 붙여야 한다. 앞에 붙는 문자열의 마지막 k글자와 뒤에 붙는 문자열의 첫 k글자가..

BOJ/Silver 2024.01.17

[메이플 캘린더] AlarmManager로 메붕이들에게 오늘 끝나는 이벤트가 있음을 알려주자

사용 의도 금일 종료되는 메이플스토리의 이벤트가 존재함을 메붕이들에게 알려주기 위하여, AlarmManager를 이용하여 Notification을 보내기로 하였다. 또한 부캠에서 그룹프로젝트를 할 때, Push Notification을 보내는 기능을 구현하는 것을 기획했는데 결국 구현까지 하지는 못 했어서, 부캠 끝나고 한 번 공부해보기로 하였다. 학습 내용 setRepeating() 앱이 백그라운드 상태일 때나, 꺼져있는 상태일 때에도 알림을 받기 위해서 AlarmManager를 사용하기로 하였다. 매일 00시가 딱 경과할 때마다 알림을 보낸다. 따라서 반복적인 알림을 예약해야 하는데, AlarmManager에서 setRepeating() 메소드가 반복 알람을 지원한다. 하지만 setRepeating(..

[메이플 캘린더] 메이플 캘린더라는 앱을 만들어보았다! 그런데...?

구글 플레이스토어 개발자 계정에 대한 요구사항 개정 2023년 11월 13일에 구글 플레이스토어 개발자 계정의 앱 테스트에 대한 요구사항이 개정되었다. 근데 왜 두 달이나 지난 지금 뒷북을 치냐면 한창 부스트캠프 멤버십 그룹 프로젝트를 하고 있었기 때문에 확인하지 못 해서 이번 달에 알았다... 부스트캠프 멤버십 과정이 12월 15일에 종료되었는데, 사실 6주간의 그룹 프로젝트가 재미있었고 수료 이후에도 그룹 프로젝트를 계속 이어나갈 의향은 있었는데, 그냥 없던 일이 되었다... 하지만 안드로이드 개발자로 취업하고 싶어서 공부를 계속 하고자 일주일 간 쉬고 크리스마스 이후인 26일부터 혼자서 간단한 앱 개발을 하고자 하였는데, 메붕이로서 평소에 메이플 내에 이벤트가 너무 많아 언제 이벤트가 끝나는 지 일..

[BOJ/Gold 5] 백준 27172 수 나누기 게임(C++)

문제 링크 https://www.acmicpc.net/problem/27172 27172번: 수 나누기 게임 《보드게임컵》을 준비하다 지친 은하는 보드게임컵 참가자들을 경기장에 몰아넣고 결투를 시키는 게임 《수 나누기 게임》을 만들었습니다. 《수 나누기 게임》의 규칙은 다음과 같습니다. www.acmicpc.net 문제 《보드게임컵》을 준비하다 지친 은하는 보드게임컵 참가자들을 경기장에 몰아넣고 결투를 시키는 게임 《수 나누기 게임》을 만들었습니다. 《수 나누기 게임》의 규칙은 다음과 같습니다. 게임을 시작하기 전 각 플레이어는 1부터 1,000,000 사이의 수가 적힌 서로 다른 카드를 잘 섞은 뒤 한 장씩 나눠 가집니다. 매 턴마다 플레이어는 다른 플레이어와 한 번씩 결투를 합니다. 결투는 서로의 카..

BOJ/Gold 2024.01.16

[BOJ/Gold 5] 백준 30470 호반우가 학교에 지각한 이유 3(C++)

문제 링크 https://www.acmicpc.net/problem/30470 30470번: 호반우가 학교에 지각한 이유 3 우여곡절 끝에 시작의 마을 앞까지 도착한 호반우지만 절벽 위의 마을로 향하는 계단이 마물들의 습격으로 망가져 통나무로 계단을 만들기로 하였다. 호반우는 통나무를 세로로 나란히 세워 계 www.acmicpc.net 문제 우여곡절 끝에 시작의 마을 앞까지 도착한 호반우지만 절벽 위의 마을로 향하는 계단이 마물들의 습격으로 망가져 통나무로 계단을 만들기로 하였다. 호반우는 통나무를 세로로 나란히 세워 계단을 만드는데, 중간중간 마물들이 마법을 사용해 방해하고 있다! 마물들이 위력이 m인 마법을 사용하면, 현재 계단을 구성하는 통나무 중 가장 긴 통나무의 길이 k를 기준으로 길이가 max..

BOJ/Gold 2024.01.15

[BOJ/Gold 3] 백준 29618 미술 시간(C++)

문제 링크 https://www.acmicpc.net/problem/29618 29618번: 미술 시간 민규는 어느 날 문득 그림이 그리고 싶어졌다. 마침 옆에는 미술과 PS에 통달한 정환이 백준 문제를 풀고 있었다. 민규는 정환에게 그림 잘 그리는 법을 물어보았고, 정환은 길이가 $N$칸인 긴 직 www.acmicpc.net 문제 민규는 어느 날 문득 그림이 그리고 싶어졌다. 마침 옆에는 미술과 PS에 통달한 정환이 백준 문제를 풀고 있었다. 민규는 정환에게 그림 잘 그리는 법을 물어보았고, 정환은 길이가 N칸인 긴 직사각형 모양의 색칠되지 않은 종이를 주며 다음과 같은 자신의 지시를 따르면 멋진 그림이 완성될 것이라고 얘기했다. a b x: a번째 칸부터 b번째 칸까지, 색칠되지 않은 칸을 x번째 색..

BOJ/Gold 2024.01.12

[BOJ/Gold 3] 백준 30985 직장인 파댕이의 사회생활(C++)

문제 링크 https://www.acmicpc.net/problem/30985 30985번: 직장인 파댕이의 사회생활 첫째 줄에 방의 수 $N (2 \leq N \leq 100,000)$과 복도의 수 $M (1 \leq M \leq 300,000)$, 건물의 층수 $K (2 \leq K \leq 200,000)$가 공백으로 구분되어 주어진다. 다음 줄부터 $M$개의 줄에 걸쳐 세 정수 $u, v, c$가 공 www.acmicpc.net 문제 파댕이는 중견기업 회사에서 직장인으로 일하고 있다. 사장님이 직장인 파댕이를 무척 아끼기 때문에, 파댕이는 사장실에 찾아가 사장님께 인사를 하려고 한다. 직장인 파댕이의 회사가 있는 건물은 K층으로 구성되어 있는데 각 층은 방과 복도로 구성되어 있다. 복도를 통해 방..

BOJ/Gold 2024.01.11

[BOJ/Gold 4] 백준 30974 What's your ETA?(C++)

문제 링크 https://www.acmicpc.net/problem/30974 30974번: What's your ETA? 첫 번째 줄에는 버스 정류장의 개수 $N$과 임의의 두 버스 정류장 사이를 잇는 양방향 도로의 개수 $M$이 공백으로 구분되어 주어진다. $(2 ≤ N ≤ 400\,000; 1 ≤ M ≤ 1\,000\,000)$ 두 번째 줄에는 각 버 www.acmicpc.net 문제 진주 나들이를 온 보선이는 버스를 타고 미리 예약해놓은 진양호 전망대에 가기 위해 가까운 버스 정류장에 도착했다. 그런데 이상하게 버스정보안내단말기에 단 한 대의 도착 정보도 표시되지 않았다. 당황한 보선이가 여기저기 알아보던 도중, 보선이의 대학 동기인 준희로부터 문자 한 통이 왔다. 맛이 어때? 알고 보니 이는 준..

BOJ/Gold 2024.01.10

[BOJ/Silver 1] 백준 30702 국기 색칠하기(C++)

문제 링크 https://www.acmicpc.net/problem/30702 30702번: 국기 색칠하기 세계의 여러 나라들은 자신의 나라를 상징하는 깃발인 국기가 있는데, 그중에는 색만 다르고 모양이 비슷한 국기들이 있다. 국기는 $N$행 $M$열의 격자판(행렬)으로 구성되어 있다. 격자판의 각 www.acmicpc.net 문제 세계의 여러 나라들은 자신의 나라를 상징하는 깃발인 국기가 있는데, 그중에는 색만 다르고 모양이 비슷한 국기들이 있다. 국기는 N행 M열의 격자판(행렬)으로 구성되어 있다. 격자판의 각 칸을 이루는 색은 A부터 Z까지의 영어 알파벳 대문자로 표현한다. A[i][j]를 국기 A의 i행 j열의 색이라고 하자. 두 국기 A, B 가 주어졌을 때, 모든 i, j(1 ≤ i ≤ N; ..

BOJ/Silver 2023.12.26

[BOJ/Gold 4] 백준 30024 옥수수밭(C++)

문제 링크 https://www.acmicpc.net/problem/30024 30024번: 옥수수밭 옥수수밭 주인 민석이는 한 해 동안 열심히 기른 옥수수를 수확하려고 한다. 옥수수밭은 $N$행 $M$열의 격자로 생각할 수 있는데, 격자의 각 칸에는 한 그루의 옥수수가 심어져 있다. 민석이는 각 www.acmicpc.net 문제 옥수수밭 주인 민석이는 한 해 동안 열심히 기른 옥수수를 수확하려고 한다. 옥수수밭은 N행 M열의 격자로 생각할 수 있는데, 격자의 각 칸에는 한 그루의 옥수수가 심어져 있다. 민석이는 각 옥수수의 가치를 측정해서 서로 다른 정수 1, 2, ⋯, N × M을 부여했다. 민석이는 처음에 옥수수밭 바깥에 위치한다. 민석이는 옥수수밭 바깥을 돌아다니면서 옥수수밭 바깥과 인접한 칸의 ..

BOJ/Gold 2023.10.21

[BOJ/Gold 5] 백준 29792 규칙적인 보스돌이(C++)

문제 링크 https://www.acmicpc.net/problem/29792 29792번: 규칙적인 보스돌이 보스의 체력 $P$의 제한 $2.66 \times 10^{11}$와 드랍하는 메소 $Q$의 제한 $1\,596\,506$은 2023년 8월 10일 업데이트 이전의 가장 많은 체력(카오스 혼테일)과 결정의 가격(노멀 파풀라투스)을 가진 일간 보 www.acmicpc.net 문제 카오는 오랫동안 메이플스토리를 플레이하며 N개의 캐릭터를 육성하였다. 지속적인 스펙업을 위해 꾸준하게 메소를 벌어야 할 필요성을 느낀 카오는, 지금까지 키워온 캐릭터들을 활용하여 메소를 벌기로 하였다. 여러 캐릭터로 보스를 효율적으로 잡기 위해, 하루에 한 캐릭터 당 최대 15분씩, 최대 M개의 캐릭터만 보스를 잡기로 하였..

BOJ/Gold 2023.10.21

[네이버 부스트캠프/웹·모바일] 8기 챌린지 수료 후기

작성하기 전에.. 2023년 8월 18일 금요일에 멤버십 결과가 발표되어서 많이 늦은 감이 있지만 후기를 적어보겠습니다. 사실 후기라고는 하지만 보안상 학습 주제와 내용은 작성하면 안 된다고 하는데, 그래서 어느 정도까지 적어야 할 지 몰라서 그냥 학습 내용 자체를 작성하진 않고 느낌만 작성해보겠습니다. 챌린지는.. 일단 기본적으로 모든 과정은 온라인으로만 진행되기 때문에 확실히 작년에 진행했던 소마보다는 편했습니다.(근데 사실 소마도 오프라인 멘토링 일정이 있는 게 아니라면 집에서만 개발했어서 나쁘진 않았는데 아무래도 모든 과정을 온라인으로 진행하는 부스트캠프가 상대적으로 더 편했습니다.) 그리고 저는 아침에 시작해서 밤 12~1시쯤 잤는데, 이 정도면 정말 짧게 한 편이고 새벽 4~5시까지 하시고 짧..

취업/후기 2023.08.19