함량 100%

함지의 개발일기

자바 3

[백준/구현] 10431 줄세우기(Java, 자바)

https://www.acmicpc.net/problem/10431 10431번: 줄세우기 초등학교 선생님 강산이는 아이들을 데리고 단체로 어떤 일을 할 때 불편함이 없도록 새로 반에 배정받은 아이들에게 키 순서대로 번호를 부여한다. 번호를 부여할 땐 키가 가장 작은 아이가 1 www.acmicpc.net 단순하게 생각하면 금방 풀 수 있다. 예를 들어 6 2 3 7 5 1 4 로 주어졌을 때, 각 학생이 옮겨지는 횟수는 자신보다 앞에 있는 수 중에서 자신보다 큰 수의 개수이다. 위의 예시로 봤을 때 다음 표와 같이 된다. 키 6 2 3 7 5 1 4 옮겨지는 횟수 0 1 1 0 2 5 3 여기서 옮겨지는 횟수를 모두 더하면 된다. 코드로 옮겨보면 간단하다. int cnt = 0; for (int i =..

알고리즘/구현 2023.06.29

[프로그래머스/해시] 전화번호 목록(Java, 자바)

https://school.programmers.co.kr/learn/courses/30/lessons/42577?language=java 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 처음에는 loop를 생각했는데 주제가 해시다보니 해시로 풀었다. 실전에서는 이렇게 문제 유형이 나오지 않을텐데 걱정이다 ㅠ HashSet을 사용해도 되나 사용하지 않은 이유는 HashMap에 비해 느리다는 단점이다. 간단히 HashSet과 HashMap 의 차이점을 짚고넘어가자. - HashSet : 순서의 의미를 두지 않으며 데이터의 중복이 없다. 오직 객체만 저장가능하..

알고리즘/해시 2023.02.04

[프로그래머스/해시] 폰켓몬(Java, 자바)

https://school.programmers.co.kr/learn/courses/30/lessons/1845?language=java 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 주어진 배열의 중복값을 제거한 뒤 값을 비교하면 되는 간단한 문제이다. HashSet은 Set 인터페이스에서 지원하는 구현클래스로 중복을 허용하지 않는다. 또한 순서도 없다. import java.util.HashSet; class Solution { public int solution(int[] nums) { HashSet hashSet = new HashSet(); fo..

알고리즘/해시 2023.02.04