
https://www.acmicpc.net/problem/1744 1744번: 수 묶기 길이가 N인 수열이 주어졌을 때, 그 수열의 합을 구하려고 한다. 하지만, 그냥 그 수열의 합을 모두 더해서 구하는 것이 아니라, 수열의 두 수를 묶으려고 한다. 어떤 수를 묶으려고 할 때, 위치에 www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 그리디 알고리즘 정렬 ⊙ 문제 접근 과정 진짜 엄청 많이 틀리고 맞췄다... 단순히 정렬하고 높은 수끼리 곱하고 음수는 음수끼리 곱하면 될 줄 알았던 내 과오였다. 문제에 예외 케이스가 생각보다 다양하게 존재한다. 첫 번째로 누구나 생각할 수 있는 음수 X 음수 조합 음수 X 음수 = 양수로 최댓값을 극대화할 수 있다. 두 번째로 0과..

https://www.acmicpc.net/problem/1449 1449번: 수리공 항승 첫째 줄에 물이 새는 곳의 개수 N과 테이프의 길이 L이 주어진다. 둘째 줄에는 물이 새는 곳의 위치가 주어진다. N과 L은 1,000보다 작거나 같은 자연수이고, 물이 새는 곳의 위치는 1,000보다 작거나 www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 그리디 알고리즘 정렬 ⊙ 문제 접근 과정 vector를 이용해 값을 입력받고 정렬을 해주었다. 그 후 temp 변수를 만들어 현재 위치와 다음 위치의 차이를 계속해서 빼주었다. (테이프가 소모되는 값) 만약 테이프가 남아있으면 계속 반복, 부족하면 count up 후 temp 초기화 후 반복. ⊙ 문제 풀이 #includ..

https://www.acmicpc.net/problem/1439 1439번: 뒤집기 다솜이는 0과 1로만 이루어진 문자열 S를 가지고 있다. 다솜이는 이 문자열 S에 있는 모든 숫자를 전부 같게 만들려고 한다. 다솜이가 할 수 있는 행동은 S에서 연속된 하나 이상의 숫자를 잡고 모 www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 그리디 알고리즘 ⊙ 문제 접근 과정 일단 다 풀고 다른 풀이 검색해보니 내 코드가 제일 짧아서 기분이 좋았다. (가장 중요) 각설하고, 다음 숫자가 다르면 count up 해주고 마지막에 2로 나눠준다. 2로 나누는 이유 : 중복 제거 ⊙ 문제 풀이 #include using namespace std; string s; int resul..

https://www.acmicpc.net/problem/13305 13305번: 주유소 표준 입력으로 다음 정보가 주어진다. 첫 번째 줄에는 도시의 개수를 나타내는 정수 N(2 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 인접한 두 도시를 연결하는 도로의 길이가 제일 왼쪽 도로부터 N-1 www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 그리디 알고리즘 ⊙ 문제 접근 과정 제일 왼쪽 도시부터 제일 오른쪽 도시까지의 거리는 1 이상 1,000,000,000 이하의 자연수라 long long을 사용해주었다. ⊙ 문제 풀이 #include #include #include using namespace std; typedef long long ll; ll N; ll..

https://www.acmicpc.net/problem/1946 1946번: 신입 사원 첫째 줄에는 테스트 케이스의 개수 T(1 ≤ T ≤ 20)가 주어진다. 각 테스트 케이스의 첫째 줄에 지원자의 숫자 N(1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개 줄에는 각각의 지원자의 서류심사 성 www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 그리디 알고리즘 정렬 ⊙ 문제 접근 과정 만약 이 문제가 안 풀린다면, 문제 자체가 이해가 안 될 확률이 높다고 생각한다. 서류 순위 면접 순위 1 4 2 3 3 2 4 1 5 5 먼저 서류 순위로 정렬한다. 서류가 1등인 사람의 면접 순위는 4등이다. 그다음 서류 2등과 비교! 만약 서류 2등의 면접 순위가 4등보..

https://www.acmicpc.net/problem/2217 2217번: 로프 N(1 ≤ N ≤ 100,000)개의 로프가 있다. 이 로프를 이용하여 이런 저런 물체를 들어올릴 수 있다. 각각의 로프는 그 굵기나 길이가 다르기 때문에 들 수 있는 물체의 중량이 서로 다를 수도 있다. 하 www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 수학 그리디 알고리즘 정렬 물리학 ⊙ 문제 접근 과정 내림차순 정렬을 한 후, min_element 함수를 사용하여 처음엔 시간 초과가 났다. 곰곰이 생각해보니 정렬을 했는데 min_element를 사용할 이유가 없었다. 바로 index로 접근하여 max함수를 이용해 정답 값인 rope를 구하였다. ⊙ 문제 풀이 #include..

https://www.acmicpc.net/problem/10162 10162번: 전자레인지 3개의 시간조절용 버튼 A B C가 달린 전자레인지가 있다. 각 버튼마다 일정한 시간이 지정되어 있어 해당 버튼을 한번 누를 때마다 그 시간이 동작시간에 더해진다. 버튼 A, B, C에 지정된 시간은 www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 수학 구현 그리디 알고리즘 ⊙ 문제 접근 과정 최대한 쉽게 접근하기 위해 생각나는 대로 코드를 작성했다. flag boolean을 만들고 T값이 10 이하로 내려가면 멈추는 while문을 만들었다. 만약 T값이 0이면 A, B, C 값 출력, 아니면 -1을 출력한다. ⊙ 문제 풀이 #include using namespace s..

www.acmicpc.net/problem/5585 5585번: 거스름돈 타로는 자주 JOI잡화점에서 물건을 산다. JOI잡화점에는 잔돈으로 500엔, 100엔, 50엔, 10엔, 5엔, 1엔이 충분히 있고, 언제나 거스름돈 개수가 가장 적게 잔돈을 준다. 타로가 JOI잡화점에서 물건을 사 www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 그리디 알고리즘 ⊙ 문제 접근 과정 문제를 보고 제일 먼저 잔돈을 배열로 정리했다. 그다음 무한 루프 문을 만들고 배열 인덱스를 활용하여 count를 올려주고 break를 통해 탈출하는 반복문 코드를 짰다. 배열을 이용하여 잔돈 정리 count 값 초기화 index를 활용해 입력받은 값 비교 입력받은 값이 더 크면 잔돈을 빼고 c..

www.acmicpc.net/problem/11047 11047번: 동전 0 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) 둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 Ai-1의 배수) www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 그리디 알고리즘 ⊙ 문제 접근 과정 조건에서 입력도 무작위가 아닌 친절하게 오름차순으로 정렬하여서 입력하라고 한다. 막힘없이 코드를 작성했고 예제 입출력과 같은 값을 출력할 수 있었다. 하지만 틀렸다고 떴다. 아래 코드이다. #include using namespace std; int m..
- Total
- Today
- Yesterday
- 문자열
- C++
- 파이썬
- java
- 정리
- 쉽게배우는
- 우종정
- 연습문제
- 풀이
- 정답
- 프로그래머스
- BFS
- Python
- 운영체제
- OS
- 백준
- 구현
- 정렬
- 그리디
- py
- 자바스크립트
- 해답
- 답
- CPP
- JS
- 알고리즘
- 쉽게 배우는 자바 프로그래밍
- 쉽게배우는자바프로그래밍
- 자바
- Web
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |