본문 바로가기

코딩테스트14

[2024 KAKAO WINTER INTERNSHIP]가장 많이 받은 선물 [파이썬] 문제 설명 문제 풀이 from pprint import pprint def solution(friends, gifts): friends = sorted(set(friends)) give_cnt = {friend : 0 for friend in friends} # 준 횟수 receive_cnt = {friend : 0 for friend in friends} # 받은 횟수 present_cnt = {friend : 0 for friend in friends} # 선물 지수 next_month_cnt = {friend : 0 for friend in friends} # 다음달에 받는 횟수 gr_records = { friend: {other: [0, 0] for other in set(friends) - {.. 2024. 1. 10.
[Python][CodingTest] 정수 삼각형 - 동적 계획법(Dynamic Programmging) - 프로그래머스 주소 링크 : https://school.programmers.co.kr/learn/courses/30/lessons/43105 접근 방식 삼각형을 역삼각형으로 만들어 준 뒤, 역방향으로 쭉 더해서 큰값들을 계속해서 더해준다. """ 역삼각형으로 뒤집어 준다. """ trg = triangle[::-1] for i in range(len(trg)): # print("=========i 값이 ", i+1, "번째 입니다.==========") for j in range(len(trg[i])-1): i = 0, j = 0 인 경우 i = 1, j = 0인 원소는 i = 0, j = 0 인 원소와 i = 0, j = 1 인 원소 중 큰 값을 더해준 값이 된다. trg[i+1][j] = trg[.. 2023. 12. 28.
[Java] 상품 관리 프로그램 만들기 [기초] 이 문제는, 김영한의 자바 입문 강의에 , 8 섹션 배열 파트 마지막 예제입니다. 문제 설명과 풀이에 대해 공유 하도록 하겠습니다. 1 Try. package array.ex; import java.util.Scanner; public class ArrayEx9 { public static void main(String[] args) { Scanner input = new Scanner(System.in); String[] productNames = new String[10]; int[] productPrices = new int[10]; int productCount = 0; while (true) { System.out.println("1. 상품 등록 | 2. 상품 목록 | 3. 종료 "); int .. 2023. 12. 21.
[Java] 배열+반복문으로 각 학생의 총점, 평균 계산 김영한님의 자바입문 강의 안에 있는 예제를 스스로 풀어본 것입니다. 첫번째 잘못된 풀이와 이유 package array.ex; import java.util.Scanner; public class ArrayEx7 { public static void main(String[] args) { Scanner input = new Scanner(System.in); int[][] students = new int[4][3]; String[] subjects = {"국어", "영어", "수학"}; int sum = 0; for (int row = 0; row < students.length; row++){ System.out.println(row+1 + "번 학생의 성적을 입력하세요!"); for (int col.. 2023. 12. 20.
[Python][CodingTest] 달리기 경주 https://school.programmers.co.kr/learn/courses/30/lessons/178871 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 뭐야 생각보다 쉬운데 ? 하고 1차 시간 초과 def solution(players, callings): for call_player in callings: # ex) kai 일때, kai 의 idx를 뽑고, 앞의 idx 선수와 리스트 교환 call_index = players.index(call_player) players[call_index], players[call_index -1] = p.. 2023. 12. 20.
[Python] 수열과 구간 쿼리 2, 3 https://school.programmers.co.kr/learn/courses/30/lessons/181924 def solution(arr, queries): # arr = [0, 1, 2, 3, 4] 이고 query 에 있는 i, j에 따라 숫자를 바꿔준다. for query in queries: i, j = query arr[i], arr[j] = arr[j], arr[i] return arr 수열과 구간 쿼리3은 [[0, 3],[1, 2],[1, 4]] 리스트 안에 리스트 값이 있는 경우 for 문을 이용해서 i, j = query 로 원소를 받아올 수 있는 언패킹 문법을 새로 알게 되어서 좋았고 이것 이외에는 신기한게 없었습니다! 수열과 구간 쿼리 2는, 쿼리 3문제를 반대로 하는 느낌이 .. 2023. 12. 15.