본문 바로가기
반응형

알고리즘11

프로그래머스 이모티콘 할인행사 - 자세한 풀이(Java) 🧩 문제 정보문제: https://school.programmers.co.kr/learn/courses/30/lessons/150368난이도: LV 2유형: 완전탐색, 백트랙킹NewCodes의 풀이스스로 풀었는가: O다시 풀어볼 문제인가: O풀이 시간: 60분제출 횟수: 1회선택 언어: Java풀이 환경: 프로그래머스 내 IDE📝 풀이 정보요구 사항 정리1. 최적해 우선순위: 가입자 수, 총판매액2. 사용자 n명, 이모티콘 m개3. 할인율: 10, 20, 30, 40 중 하나4. 구매 조건: 할인율 이상이어야 구매, 특정 금액 이상이면 플러스 가입5. 정답: 최적의 상황일 때 가입자 + 판매액 리턴  리팩토링한 코드 (정돈된 풀이)import java.util.*;class Solution { .. 2024. 6. 7.
프로그래머스 양궁대회 - 자세한 풀이 (Java) 🧩 양궁대회 - 문제 정보문제: https://school.programmers.co.kr/learn/courses/30/lessons/92342난이도: LV 2유형: 완전 탐색, 구현NewCodes의 풀이스스로 풀었는가: O다시 풀어볼 문제인가: O풀이 시간: 65분제출 횟수: 3회선택 언어: Java풀이 환경: 프로그래머스 내 IDE📝 풀이 정보요구 사항 정리라이언은 어피치보다 k 점수에 더 많은 화살을 맞혀야 k 점수를 가져갈 수 있다. 라이언이 어피치를 이기기 위해서는 어피치보다 최종 점수가 더 커야만 한다.가장 큰 점수차로 이길 수 있는 것 리턴한다.라이언 우승 방법 여러 개라면, 가장 낮은 점수를 더 많이 맞힌 경우 리턴한다.가장 낮은 점수에서 개수 같다면 그 다음 걸로 판단한다. 풀이 설.. 2024. 6. 7.
프로그래머스 프렌즈4블록 - 자세한 풀이 (Java) 🧩 문제 정보문제: https://school.programmers.co.kr/learn/courses/30/lessons/17679난이도: LV 2유형: 구현, 자료구조NewCodes의 풀이스스로 풀었는가: O다시 풀어볼 문제인가: X풀이 시간: 45분 제출 횟수: 1회선택 언어: Java풀이 환경: 프로그래머스 내 IDE📝 풀이 정보요구 사항 정리2 x 2 형태로 같은 블록이 4개 붙어 있을 경우 블록 사라짐블록 지워진 후에는 그 위에 있는 블록들이 떨어져서 빈 공간 채우기앞선 1~2의 시행에서 지운 블록이 있다면, 또 다시 1~2의 과정을 반복앞선 1~2의 시행에서 지워진 블록이 없다면, 게임 종료 풀이 설계 : 풀이 설계에 있어 크게 세 메서드를 거치면 될 거라고 생각했습니다. 2 x 2 형태.. 2024. 5. 30.
프로그래머스 멀쩡한 사각형 - 자세한 풀이 (Java) 🧩 문제 정보문제: https://school.programmers.co.kr/learn/courses/30/lessons/62048#난이도: LV 2유형: 구현, 수학NewCodes의 풀이스스로 풀었는가: X다시 풀어볼 문제인가: O풀이 시간: 60분 + a제출 횟수: 7회선택 언어: Java풀이 환경: 프로그래머스 내 IDE📝 풀이 정보요구 사항 정리대각선에 의해 관통되는 정사각형은 제외해야 한다.가로 길이와 세로 길이는 1억 이하의 자연수이다. 풀이 설계 : 구글링해보니 다들 수학적으로 푸신 것 같은데, 저는 구현 위주로 접근하여 풀이했습니다. 입출력 예를 통해 큰 직사각형 안에서 관통된 직사각형 부분이 똑같은 패턴으로 반복되는 걸 발견했습니다. 그래서 가장 최소 단위의 패턴을 알고 총 패턴이 .. 2024. 5. 29.
백준 5430번 AC - 자세한 풀이(Java) 🧩 문제 정보문제: https://www.acmicpc.net/problem/5430난이도: 골드 5유형: 구현, 자료구조NewCodes의 풀이스스로 풀었는가: O다시 풀어볼 문제인가: O풀이 시간: 60분 + a제출 횟수: 6회선택 언어: Java풀이 환경: IntelliJ IDEA CE (코드 자동완성 기능 X)📝 풀이 정보요구사항 정리R - 뒤집기D - 첫 번째 수 버리기 (배열 비어있다면 에러)풀이 설계 : 문제의 요구사항, 흐름이 크게 복잡하지 않아서 풀이 전에 별도로 설계하진 않았습니다. (안 한 걸 후회합니다... 뒤에서 그 이유가 나옵니다.)통과한 코드 (실전 풀이) : 실전 풀이를 보고 싶으신 분은 해당 코드를 참고해 주세요! 그다음은 리팩토링한 코드를 첨부했으니 좀 더 정돈된 코드를.. 2024. 5. 24.
백준 3190번 뱀 - 자세한 풀이 (Java) 🧩 문제 정보백준 3190번 뱀  문제: https://www.acmicpc.net/problem/3190난이도: 골드 4유형: 구현, 자료구조NewCodes의 풀이스스로 풀었는가: O풀이 시간: 48분제출 횟수: 1번선택 언어: Java풀이 환경: IntelliJ IDEA CE (코드 자동완성 기능 X)📝 풀이 과정문제 요구 사항 정리게임 시작 시 뱀 몸의 길이 1, 맨 위 맨 왼쪽(1, 1), 오른쪽매 초 머리를 늘려 이동, 방향 전환(왼쪽 L, 오른쪽 D)도 존재사과 유무에 따라 꼬리 유지 or 삭제벽이나 몸에 부딪히면 게임 끝 문제 풀이 설계(feat. 의사 코드)1초마다 이동하는 함수 구현하기      뱀의 머리 방향에 따라 움직이기 & time++      벽이나 몸에 부딪혔는지 확인하기 .. 2024. 5. 23.
카카오맵이 최적 경로를 결정하는 데까지 카카오맵에서 불편함을 느끼고, 궁금증을 해결하다.   안녕하세요! NewCodes입니다!! 우선 이전 포스팅에서제가 가졌던 궁금증에 대해 다시 살펴보겠습니다.   위 그림은 제가 사는 동네입니다. 보시다시피 1번 경로가 2번보다 훨씬 더 빠른 길입니다. 하지만, 카카오맵이 항상 2번 경로를 추천해줬습니다.  그래서 저는 카카오택시를 탈 때면 항상 시간과 돈을 불필요하게 소모하곤 했습니다. 이러한 현상이 1년 이상 반복되자저는 궁금해졌습니다.  카카오맵은 도대체 어떤 이유로2번 경로를 최적 경로로 추천할까?  길찾기 서비스는 어떤 원리로 동작할까?   드디어 이 궁금증에 대한 마침표를 찍고자 합니다!이를 위해 아래와 같은 과정을 거쳤습니다.  1단계: 가설 설정2단계: 다양한 길찾기 알고리즘 학습A* Al.. 2024. 2. 7.
반응형