본문 바로가기
728x90
반응형

알고리즘109

[백준] 8979번: 올림픽 - java https://www.acmicpc.net/problem/8979 간만에 백준으로 다시 넘어왔다. 한동안 프로그래머스에서 풀었는데 괜찮은 것 같았다. 그러나 푸는 맛이 없어서 다시 백준으로 풀 계획이다.그나저나 java로 넘어온게 맞는 선택인가 고민이다. 물론 개발실력을 높일 순 있는데 내가 그냥 잘하는 파이썬을 할껄 그랬나.. 뭐 쨋는 문제를 봐보자. 사실 이런 정렬문제는 파이썬에서 아주 쉽게.. 아니다. 이제 자바 얘기만 하자.자바에서 푸는 방법을 모르겠어서 다른 사람들 코드를 참고했다. 우선 이런 다양한 조건이 있는 경우의 정렬은 compareTo를 상속해서 사용해야한다.  왜? 그 이유는 뭐 단순한 숫자같은 경우는 어떤게 크고 작은게 명확할 것이다. 하지만 객체에서는 여러가지 조건을 어떤 기준으로.. 2024. 9. 11.
[프로그래머스] 다단계 칫솔 판매 - java https://school.programmers.co.kr/learn/courses/30/lessons/77486 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제 풀이 처음 이 문제를 봤을때 사실 트리로 이걸 어떻게 구현하나 고민하였었다. 근데 생각해보니 트리는 자료구조와 while문을 잘 활용하여 충분히 구현가능하다는 것을 느끼고 처음 접근을 빠르게 하기 위해 해쉬맵에 자식 부모 해시맵을 생성한 후 점수 해시맵을 통하여 while문을 통하여 점수를 계속 갱신해주는 방식으로 풀면 된다.  코드import java.util.*;class Solution {.. 2024. 8. 17.
[프로그래머스] 예상 대진표 - java https://school.programmers.co.kr/learn/courses/30/lessons/12985 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제 풀이 문제는 직접 구현할려고 하면 어렵지만 대진표가 어떻게 진행되는지를 생각해서 수학적으로 표현한다면 쉽게 구할 수 있다. 처음에는 배열에 전부 넣고 이진탐색을 할려고 했으나 너무 투머치 생각인 것 같았다..ㅎ 코드class Solution{ public int solution(int n, int a, int b) { int answer; for(answer=.. 2024. 8. 12.
[프로그래머스] 완주하지 못한 선수 - java https://school.programmers.co.kr/learn/courses/30/lessons/42576?language=java 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제 설명 해쉬맵을 사용하여 카운트를 해주고 다시 빼준 다음 0이 아닌 경우만 출력해주는 간단한 문제 몰랐던 점if(map.containsKey(s)){ map.put(s, map.get(s) + 1);}else{ map.put(s, 1); 위 코드를 getOrDefault 함수로 아래 한줄로 표현가능하다.map.put(p, map.getOrDefault(p, 0) + 1);.. 2024. 8. 11.
728x90
반응형