하루 알고리즘 1문제 풀기 (21) 썸네일형 리스트형 백준 10989문제 - 수 정렬하기 3 C++ 📍 백준 10989문제 - 수 정렬하기 3 C++https://www.acmicpc.net/problem/10989 🧩 문제 설명이 문제는 오름차순 정렬을 구현하는 문제이다. 하지만 sort()를 사용해도 시간초과가 나고 정렬알고리즘을 구현해도 시간초과가 났다.그래서 어떻게 풀어야하는지 감을 못잡고 있었다. 해법은 배열을 활용한 접근법에 있었다. 내가 너무 정렬에만 꽂혀서 다른 방법을 생각조차 못해본 것이다. 배열을 사용하면 문제를 정말 간단하게 해결할 수 있다. 👍 이 문제에서 배운점처음에는 무조건 배열에 수를 저장해두었다가 정렬알고리즘을 구현해서 다시 출력하는 방식으로 문제에 접근했다. (정석 방식)하지만 이렇게 하면 무조건 메모리 초과나 시간초과가 뜬다. ✅ 왜 시간초과가 날까? N의 최댓.. 백준 2569번 - 달팽이는 올라가고 싶다 C++ 📍 백준 2569번 - 달팽이는 올라가고 싶다 C++https://www.acmicpc.net/problem/2869 🧩 문제요약이 문제는 달팽이가 목표지점까지 몇일만에 올라갈 수 있을 지 구하는 문제다. 문제가 매우 짧고 단순하기 때문에 for문으로 금방 해결 할 수 있어 보인다. 하지만 for문으로 구현을 하면 시간초과에 걸리고 만다. 그렇다면 어떻게 해결해야 할까? 👍 이 문제에서 배울 점여기서는 for문을 활용한 방법이 아닌 수학적인 수식을 발견해야 한다. 달팽이는 낮에 a만큼 올라갔다가 밤에 b만큼 내려오게 된다. 이 과정을 반복하면서 최소 몇일이 걸려야 목표 지점에 도달하게 될까? 이 문제에서 중요한 포인트는 "목표지점에 도달하면 더이상 내려오지 않다"는 것이다. 달팽이가 하루에 .. 백준 15829번 - Hasing 문제 C++ 📍 백준 15829번 - Hasing 문제 C++ https://www.acmicpc.net/problem/15829 🧩 문제요약문자를 입력받아 hasing 구현하기 r = 31m = 1234567891 👍 이 문제에서 배울점이 문제는 점수가 small 50점 large 50점으로 나눠져 있다. small은 가볍게 풀어도 점수가 나오지만 large를 만족하기 위해서는 자료형을 고민해야한다. ✅ C++의 자료형자료형크기비트 수값의 표현범위정수형char1byte8-128 ~ +127 (8bit = 2^8 = 256가지)short2byte16- 32,768 ~ + 32,767 (16bit = 2^16 = 65,536가지)int4byte32-2,147,483,648 ~ +2,147,483,647 (3.. 백준 2292번 : 벌집 C++ 📍 백준 2292번 : 벌집 C++https://www.acmicpc.net/problem/2292 🧩문제요약 : 1번 방에서 시작해서 N번 방에 도달하기 위해 지나야하는 최소 층수를 구하는 문제 1번 방은 1층 (기본)그 다음 부터는 6개씩 늘어난다. 코드 구현#include using namespace std;int main(){ int N, layer = 1, cnt = 1; scanf("%d",&N); while(N>cnt){ cnt += 6*layer; layer++; } printf("%d\n", layer);} 👍이 코드에서 배울점이 문제를 풀다가 loop의 조건을 어떻게 줘야할지 고민을 많이 했는데 생각보다 아주 간단하게 해.. 백준 2231번 - 분해합 문제 C++ 오늘 백준 문제를 풀다가 너무너무 똑똑한 풀이법이 있어서 기록한다. 📍 백준 2231번 문제 - 분해합 이다. https://www.acmicpc.net/problem/2231 🧩 문제 요약 어떤 자연수 N이 있을 떄, 어떤 수 M이 M+각 자리수의 합 = N이 되면 M 은 N의 생성자라고 한다. N의 가장 작은 생성자를 출력하는 문제다. --- 없으면 0 출력 예:N = 216 → 198 + 1 + 9 + 8 = 216 → 198이 생성자 🧾 내가 작성한 코드 #include using namespace std;int main(){ int N; scanf("%d", &N); // 값 입력 for(int i=1;i 🧾 상위 코드 #includeint main(){ in.. 이전 1 2 3 다음