본문 바로가기

언리얼(Unreal)/코딩테스트6

25.03.10 코드카타 #include #include using namespace std;int solution(vector nums) { int count = 0; int n = nums.size(); // 소수 판별 함수 auto isPrime = [](int num) { if (num 문제 그리고 해답입니다. 소수를 분별하는 함수가 라이브러리에 있을까 하고 검색해봤는데 그런건 없었습니다..그렇기에 따로 구현해줘야했습니다. 2025. 3. 10.
25.02.20 코드카타 오늘의 문제를 보고 든 생각은 벡터 공간을 하나 만들어주고 거기에 다 넣으면서 k개가 넘을때마다 제일 작은 값을 빼줌과동시에 발표점수 즉 answer vector에 넣어주면 되겠다 싶었다 그래서 sort로 맨앞값을 작은값으로 하면 되나? 싶었는데 그래서 gpt에게 효율적으로 가장 작은 값을 빼는 방법을 물어봤다.그러다 완전이진트리구조를 가진 힙 자료구조를 알게 되었다.🔹 최소 힙 (Min Heap)란?**최소 힙(Min Heap)**은 완전 이진 트리(Complete Binary Tree) 구조를 가지며, 부모 노드가 항상 자식 노드보다 작거나 같은 값을 가지는 자료구조입니다.📌 즉, 루트 노드(root)가 가장 작은 값을 유지하며, 힙에서 요소를 제거하면 항상 가장 작은 값부터 나오게 됨.🔹 최소.. 2025. 2. 20.
25.02.19 코딩테스트 보자마자 든 생각은 while 문으로 처리해주면 되겠다 싶어서 바로 실행전체빈병에서 계속 a병을 나눠준 몫을 더해주면 되겠다 했음근데 자꾸 뭔가 오류나서 생각해보니 콜라를 받으면 또 그 콜라가 마셔서 빈병이 생긴다는걸 까먹어서 다시 시작 #include #include using namespace std;int solution(int a, int b, int n) { int answer = 0; while (n >= a) { int newCola = (n / a) * b; answer += newCola; n = (n % a) + newCola; } return answer;}최종 코드이다새로운 콜라를 원래 주고도 남은 콜라.. 2025. 2. 19.
25.02.17 코딩테스트 문제를 보고 처음 든 생각은 food를 짝수인지 홀수인지 나눠서 짝수면 그냥 앞뒤로 하나씩 넣어주고 홀수면 -1해주고 앞뒤로 하나씩 넣어주면 되겠다 생각했다. 하지만 가장 칼로리가 낮은게 끝과끝에 와야하니 for문을 뒤부터 돌려줘야겠네 생각했다. 물론 차차 진행하다보니 가운데 0도 넣어야하므로 left와 right를 따로 넣고 나중에 합치면 되겠다 생각했다. #include #include using namespace std;string solution(vector food) { string left = "", right = ""; for (int i = food.size() - 1; i > 0; --i) { int count = food[i] / 2; // 짝수 개수만큼 .. 2025. 2. 17.
24.12.19 오늘의 문제입니다.리스트에 해당 문자가 있는지 확인하는 단순한 if else 구문인데요 이미 답은 적혀있습니다.#include using namespace std;int main(void) { string code; cin >> code; string last_four_words = code.substr(code.size()-4, 4); if(last_four_words == "_eye"){ cout 이런식으로 되어있는데요 이때 해답과 저의 답은 같은데 오답처리가 되길래 뭔가 오류가 걸린 것 같네요.문제의 답이 저에게 도움이 됐다기보다는 string last_four_words = code.substr(code.size()-4, 4);이 한 줄이 저에게 더 도움 됐는데요.. 2024. 12. 19.
24.12.17 하루에 코딩테스트 3개씩 풀어서 문제와 풀이 또는 오답노트를 작성하고자 합니다.레벨 0부터 차근차근 다 풀어볼 예정입니다.첫번째 문제는 단순하게 /n을 사용하여 출력하는 문제였습니다. 아직 초반인만큼 난이도가 높지는 않습니다. #include using namespace std;int main(void) { string message = "Let's go!"; cout  저의 해답입니다. 그외에도 다른 사람풀이를 확인했는데#include using namespace std;int main(void) { string message = "Let's go!"; cout 이런식으로 endl를 연달아 사용하는 방법도 나쁘진 않아보였습니다. 두번째 문제입니다.나머지를 어떻게 출력할 것인가? 라.. 2024. 12. 17.