https://www.acmicpc.net/problem/2493 2493번: 탑 첫째 줄에 탑의 수를 나타내는 정수 N이 주어진다. N은 1 이상 500,000 이하이다. 둘째 줄에는 N개의 탑들의 높이가 직선상에 놓인 순서대로 하나의 빈칸을 사이에 두고 주어진다. 탑들의 높이는 1 www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 자료 구조 스택 ⊙ 문제 접근 과정 stack pair를 이용하여 index와 value를 동시에 push 해주었다. 가장 위에 있는 값의 value는 st.top().second이고 그것에 대한 index는 st.top().first이다. 현재 입력 값이랑 기존에 stack에 저장되어 있는 값이랑 비교 후, 신호 수신 가능( 기존에 ..
https://www.acmicpc.net/problem/17182 17182번: 우주 탐사선 우주 탐사선 ana호는 어떤 행성계를 탐사하기 위해 발사된다. 모든 행성을 탐사하는데 걸리는 최소 시간을 계산하려 한다. 입력으로는 ana호가 탐색할 행성의 개수와 ana호가 발사되는 행성의 위 www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 그래프 이론 비트마스킹 백트래킹 플로이드-와샬 외판원 순회 문제 ⊙ 문제 접근 과정 플로이드 와샬을 이용하여 모든 행성 방문 시 최단거리를 구하는 문제이다. 플로이드 와샬에선 문제없이 풀었지만, dfs 구현하는 부분에서 어려움을 느껴 어흥님의 블로그에서 해당 문제의 dfs 부분을 참고했다. 자세한 건 코드 주석에 적어놨다! ⊙ 문제..
https://www.acmicpc.net/problem/5622 5622번: 다이얼 첫째 줄에 알파벳 대문자로 이루어진 단어가 주어진다. 단어의 길이는 2보다 크거나 같고, 15보다 작거나 같다. www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 구현 ⊙ 문제 접근 과정 각 타입(알파벳)에 대한 그룹(숫자)을 만들어서 숫자를 출력할까라고 생각했다. 그리고 생각을 바로 접었다. 코드가 엄청 길어질 것 같다고 생각했다. 근데 지금 다시 생각해보니 int group[] = {3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8,8,9,9,9,10,10,10,10}; 이런식으로 짜면 짧게 구현할 수 있다. 각설하고, 나는 아스키코드로 문제를 풀었다. 그리고 식..
https://www.acmicpc.net/problem/2490 2490번: 윷놀이 우리나라 고유의 윷놀이는 네 개의 윷짝을 던져서 배(0)와 등(1)이 나오는 숫자를 세어 도, 개, 걸, 윷, 모를 결정한다. 네 개 윷짝을 던져서 나온 각 윷짝의 배 혹은 등 정보가 주어질 때 도(배 한 www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 구현 ⊙ 문제 접근 과정 윷 한번 던질 때마다 초기화다. 즉, 독립이란 소리! 입력받은 숫자들을 다 더해 각자의 케이스(도, 개, 걸, 윷, 모) 별로 정리한다면 쉽게 풀 수 있다. 정말 오랜만에 switch문을 사용해 풀어봤다. if문을 사용해도 상관없다. ⊙ 문제 풀이 #include using namespace std; in..
https://www.acmicpc.net/problem/16234 16234번: 인구 이동 N×N크기의 땅이 있고, 땅은 1×1개의 칸으로 나누어져 있다. 각각의 땅에는 나라가 하나씩 존재하며, r행 c열에 있는 나라에는 A[r][c]명이 살고 있다. 인접한 나라 사이에는 국경선이 존재한다. 모 www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 구현 그래프 이론 그래프 탐색 너비 우선 탐색 시뮬레이션 ⊙ 문제 접근 과정 너비 우선 탐색(bfs)을 이용해 풀었다. 거기에 for문을 한번 더 감쌌다. L과 R의 범위로 인해 연합국이 생기지 않을 때까지 이 for문을 반복한다. 한 바퀴 돌 때마다 days가 1 증가 연합국이 생기지 않는다면 days(결과)를 출력한다...
https://www.acmicpc.net/problem/14719 14719번: 빗물 첫 번째 줄에는 2차원 세계의 세로 길이 H과 2차원 세계의 가로 길이 W가 주어진다. (1 ≤ H, W ≤ 500) 두 번째 줄에는 블록이 쌓인 높이를 의미하는 0이상 H이하의 정수가 2차원 세계의 맨 왼쪽 위치 www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 구현 시뮬레이션 ⊙ 문제 접근 과정 index로 접근해 층별마다 탐색했다.1층부터 H층까지 순서대로 해결하여 층마다 water 값을 갱신해줬다. 자세한 설명은 코드에 주석으로 달아놨다. ⊙ 문제 풀이 #include #include using namespace std; #define MAX 501 int H, W; in..
https://www.acmicpc.net/problem/11654 11654번: 아스키 코드 알파벳 소문자, 대문자, 숫자 0-9중 하나가 주어졌을 때, 주어진 글자의 아스키 코드값을 출력하는 프로그램을 작성하시오. www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 구현 ⊙ 문제 접근 과정 char로 입력받고 입력받은 값을 int로 변환해주면 된다. ⊙ 문제 풀이 #include using namespace std; int main() { char x; cin >> x; int result=x; cout
https://www.acmicpc.net/problem/10159 10159번: 저울 첫 줄에는 물건의 개수 N 이 주어지고, 둘째 줄에는 미리 측정된 물건 쌍의 개수 M이 주어진다. 단, 5 ≤ N ≤ 100 이고, 0 ≤ M ≤ 2,000이다. 다음 M개의 줄에 미리 측정된 비교 결과가 한 줄에 하나씩 www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 그래프 이론 플로이드-와샬 ⊙ 문제 접근 과정 입력받을 때, 해당 경로에 대해 1이라는 값을 표시해준다. 플로이드 와샬로 검사하여 만약 거쳐갈 수 있다면 또다시 1 표시 1 표시가 둘 다 안 되어 있다면 count up! N까지 다 돌고 count 출력 해준 뒤, count를 다시 0으로 초기화 다음 번호, 마지..
https://www.acmicpc.net/problem/18513 18513번: 샘터 첫째 줄에 자연수 N과 K가 공백을 기준으로 구분되어 주어진다. (1 ≤ N, K ≤ 100,000) 둘째 줄에 N개의 샘터의 위치가 공백을 기준으로 구분되어 정수 형태로 주어진다. (-100,000,000 ≤ 샘터의 위치 ≤ www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 그래프 이론 그래프 탐색 너비 우선 탐색 ⊙ 문제 접근 과정 같은 거리의 집을 다 탐색하고도 탐색할 집이 남아있다면 거리를 1 늘리고 다시 탐색한다. set을 이용하여 방문을 했는지 안 했는지 판별했다. ⊙ 문제 풀이 #include #include #include using namespace std; ty..
https://www.acmicpc.net/problem/10817 10817번: 세 수 첫째 줄에 세 정수 A, B, C가 공백으로 구분되어 주어진다. (1 ≤ A, B, C ≤ 100) www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 구현 ⊙ 문제 접근 과정 배열에 값을 입력받는다. 배열 오름차순 정렬 뒤에서 2번째 값 출력(여기서는 index 0, 1, 2 총 3개이니 index 1 출력) ⊙ 문제 풀이 #include #include using namespace std; int arr[3]; int main() { for(int i=0;i> arr[i]; sort(arr,arr+3); //오름차순 정렬 cout
- Total
- Today
- Yesterday
- BFS
- 쉽게 배우는 자바 프로그래밍
- CPP
- 쉽게배우는
- 정리
- 풀이
- Web
- C++
- 자바
- 해답
- 구현
- 백준
- 파이썬
- JS
- 연습문제
- 문자열
- 알고리즘
- OS
- 운영체제
- 자바스크립트
- py
- 정렬
- 그리디
- 프로그래머스
- 쉽게배우는자바프로그래밍
- 답
- 우종정
- 정답
- Python
- java
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |