https://www.acmicpc.net/problem/1213 이 문제는 과거에 무척이나 헤맷던 기억이 있던 문제라 다시 풀어보고 싶었다.그리고 잘 풀었다..ㅎㅎ 과거와 달라진 점이 있다면 이번엔 자료구조를 map을 사용했다는 점이다.map은 내부적으로 '이진트리'기 때문에,앞에서부터 차례로 탐색하면, 오름차순으로 탐색할 수 있다는 특징이 있다.이 특징을 활용해 문제를 풀었다. 짠!1. 풀이과정1. 문자열 입력받기2. 문자의 갯수를 저장 : 2.1. map? ordinary map이 있나? 아니 map자체가 트리구조니까 괜찮나? 2.2. 알파벳 배열을 만들까?3. 정답 배열을 두개로 쪼개서 3.1. 짝수인 문자인 경우 ansHead += (char)*(개수/2), ansTail = ..
https://www.acmicpc.net/problem/1515 문제를 잘 읽자 ㅎㅋㅎㅋ 처음 틀린건 문제 내에서첫째 줄에 지우고 남은 수를 한 줄로 이어 붙인 수가 주어진다. 이 수는 최대 3,000자리다. 라는 조건을 보고 문제해석을 잘못했기 때문이다. 투포인터 비슷하게 풀었다.두개의 수를 비교하면서 최소 N값을 구하기 위한 반복문을 돌리는 것이 핵심이었다. #include using namespace std;int main(){ ios::sync_with_stdio(0); cin.tie(0), cout.tie(0); string str; cin >> str; int turn = 0; // 입력받은 문자열에서 비교할 위치를 가리키는 포인터 for (int i = ..
2025.03.27 - [백준이당] - [C++] 백준 1931번 : 회의실배정 [C++] 백준 1931번 : 회의실배정https://www.acmicpc.net/problem/1931 ...알고리즘 같이하는 친구가 준 지혜로 드디어 풀었다.. - 각 회의가 겹치지 않게 하면서 회의실을 사용할 수 있는 회의의 최대 개수를 찾자 - 회의는 한2hiidevdang.tistory.com 2025.03.25 - [백준이당] - [C++] 백준 1541번 : 잃어버린 괄호 [C++] 백준 1541번 : 잃어버린 괄호https://www.acmicpc.net/problem/1541이 문제도 1년전에 풀었던 문제다..하지만 인간이라는게 쉽게 바뀌지 않는다.틀렸던 문제는 또 틀리더라..ㅎ(이럴때마다 내 백준 티어를 깍..
https://www.acmicpc.net/problem/1931 ...알고리즘 같이하는 친구가 준 지혜로 드디어 풀었다.. - 각 회의가 겹치지 않게 하면서 회의실을 사용할 수 있는 회의의 최대 개수를 찾자 - 회의는 한번 시작하면 중간에 중단 x - 한 회의가 끝나는 것과 동시에 다음 회의가 시작될 수 있음 - 회의의 시작시간과 끝나는 시간이 같을수도 있다. #include using namespace std;#define pii pairbool cmp(pii a, pii b){ if (a.second == b.second) { return a.first > n; vector v; // 입력 while (n--) { int s, e; ..
https://www.acmicpc.net/problem/1541이 문제도 1년전에 풀었던 문제다..하지만 인간이라는게 쉽게 바뀌지 않는다.틀렸던 문제는 또 틀리더라..ㅎ(이럴때마다 내 백준 티어를 깍고 싶다. 나에게는 부끄럽고 과분한 티어임...) 1. 문제 이해문제는 뭐 너무나도 단순하다.주어진 수식의 결과가 최소가 되도록 괄호를 적절히 활용하면 된다. 12+34+23-4-32+32-00233 위와 같은 수식에서는 (12+34+23)-(4)-(32+32)-(00233) 이렇게 괄호를 두면 된다. 이제 규칙성을 찾아보자.(-)가 나오기 이전과 이후로 의미있는 차이가 생긴다. 1. 처음 (-)를 만나면 이 전에 있던 숫자들은 전부 더해준다.2. 이후로 만나는 숫자들은 전부 빼준다. 그냥 분배법칙 생각하면..
https://www.acmicpc.net/problem/1072 어..이 문제는 과거에 풀었었었었던 문제다..ㅜㅜ그래서 음~ 그냥 간단한 문제군. 하고 생각했다가 맞왜틀 4차례 거치고~ 질문게시판에서 단비같은 글을 발견했고..https://www.acmicpc.net/board/view/156873 틀린 테케를 찾아주는 엄청난 사이트를 발견했다..ㅜㅜhttps://testcase.ac/problems/1072 1072번 게임 - Testcase AC반례 찾기 실행 횟수57번 반례 찾은 횟수45번 최근 1주일 실행 횟수13번testcase.ac 이 문제는 수학, 이분탐색 문제다.하지만, 그리디로도 충분히 풀 수 있다. 처음 이 문제를 접했을 때에는 수학으로 접근했기 때문에 단순한 수식하나로 문제를 쉽게 ..
https://www.acmicpc.net/problem/14916짱 쉬운 그리디 문제다. 5로 나눈 몫을 가지고 이렇게 저렇게 활용하면 된다.추가로 거스름 돈을 만들 수 없는 경우 -1을 출력하는 것도 잊지 말자. #include using namespace std;int main(){ ios::sync_with_stdio(0); cin.tie(0), cout.tie(0); int n; cin >> n; int a = n / 5; for (; a >= 0; a--) { int tmp = n - (5 * a); if (tmp % 2 == 0) { cout 끗