본문 바로가기

분류 전체보기

(99)
SCPC 2023 1차 예선 후기 SCPC 2023 1차 예선이 끝났다. 5문제중에 최종적으로 2문제 만점 3번 문제는 반만 맞았다. 동아리 OT랑 대회랑 겹쳐서 많은 시간을 쓰지 못한게 아쉽다 ㅠㅠ 1번 문제 1번 문제는 브루트포스 알고리즘 문제 같았다. N에서 (A상자에 들어있는 과일의 수) 빼고 나머지 과일이 B 상자에 모두 들어갈 수 있는지를 확인했다. (코드는 올리면 문제될까봐 안올리겠습니다...) 2번 문제 2번 문제는 투 포인터를 이용해 풀었는데, 2가지를 주의 깊게 생각했다. 첫 번째는 방향 전환은 한 번만 해야 한다는 것 두 번째는 양수와 음수로 나누었을 때 방향 전환은 값이 작은 쪽에서 해야 한다는 것이다. 양수와 음수 배열 2개를 만든 후 투 포인터를 이용해 풀었다. (코드는 올리면 문제될까봐 안올리겠습니다...) 3..
[백준] 11866번 요세푸스 문제 0 C++ 문제 풀이 https://www.acmicpc.net/problem/11866 11866번: 요세푸스 문제 0 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 1,000) www.acmicpc.net 문제 풀이 자료구조 Queue를 이용해 K번째 숫자를 출력한다. 계속 틀리게 나와서 뭐가 문제인지 몰랐는데 쉼표 뒤의 띄어쓰기를 고려하지 않았다 문제 출력을 잘 확인해야겠다. 소스코드 #include #include using namespace std; queue que; int main() { int N, K; cin >> N >> K; for (int i = 1; i
[백준] 1181번 단어 정렬 C++ 문제 풀이 https://www.acmicpc.net/problem/1181 1181번: 단어 정렬 첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. www.acmicpc.net 문제 풀이 정렬 문제이다 보니 시간복잡도가 nlgn인 합병정렬(MergeSort)를 이용해 문제를 해결하려고 했다. 단어의 길이에 따라 정렬하고 길이가 같은 단어들의 비교인 경우에는 string의 compare 함수를 이용해 정렬을 했다. 출력의 경우 조건문을 붙여 중복된 단어의 출력을 피했다. 소스코드 #include #include using namespace std; string ..