해시

🔺 문제 1620번: 나는야 포켓몬 마스터 이다솜 첫째 줄에는 도감에 수록되어 있는 포켓몬의 개수 N이랑 내가 맞춰야 하는 문제의 개수 M이 주어져. N과 M은 1보다 크거나 같고, 100,000보다 작거나 같은 자연수인데, 자연수가 뭔지는 알지? 모르면 www.acmicpc.net 🔺 코드 - 틀림 import java.util.*; import java.io.*; public class Main { // Map에서 키 가져오기 public static K getKey(Map map, V value) { for(Map.Entry entry : map.entrySet()) { if(value.equals(entry.getValue())) { return entry.getKey(); } } return n..
🔺 문제 7785번: 회사에 있는 사람 첫째 줄에 로그에 기록된 출입 기록의 수 n이 주어진다. (2 ≤ n ≤ 106) 다음 n개의 줄에는 출입 기록이 순서대로 주어지며, 각 사람의 이름이 주어지고 "enter"나 "leave"가 주어진다. "enter"인 경우는 www.acmicpc.net 🔺 코드 import java.util.*; import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int n = Integer.parseInt(br.readLine..
🔺 문제 14425번: 문자열 집합 첫째 줄에 문자열의 개수 N과 M (1 ≤ N ≤ 10,000, 1 ≤ M ≤ 10,000)이 주어진다. 다음 N개의 줄에는 집합 S에 포함되어 있는 문자열들이 주어진다. 다음 M개의 줄에는 검사해야 하는 문자열들이 주어 www.acmicpc.net 🔺 코드 - 정답 1 ) HashSet 이용 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 import java.util.*; import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = ..
내 코드 (틀림) import java.util.*; class Solution { public int solution(String[][] clothes) { int answer = 0; HashMap map = new HashMap(); for(String[] s : clothes) { map.put(s[1], map.getOrDefault(s[1], 0) + 1); } if(map.size() == 1) { answer = clothes.length; } else { answer = clothes.length + map.size(); } return answer; } } 내가 생각한 흐름은 이랬다. 1. 그냥 로해서 HashMap 만듦 (7번째 줄) 2. 얘네 카운트해줌 (9-10번째 줄) 3. 만약..
음 뭔가 containsKey랑 substring 이용하면 될 것 같았는데, HashMap 선언할 때 두 번째에 넣을 자료형부터 무엇을 넣어야할지 고민이 되었다,,, 그래서 결국 다른 분 코드 보고 작성한,,,,, [프로그래머스] 전화번호 목록 (해시 Lv. 2) - 자바 Java 0. 동일 유형 문제 [프로그래머스] 완주하지 못한 선수 (해시 Lv. 1) [프로그래머스] 전화번호 목록 (해시 Lv. 2) [프로그래머스] 위장 (해시 Lv. 2) [프로그래머스] 베스트 앨범 (해시 Lv. 3) Youtube 영상으 coding-grandpa.tistory.com import java.util.*; class Solution { public boolean solution(String[] phone_book..
코드 import java.util.*; class Solution { public int solution(int[] nums) { int answer = 0; int max = nums.length / 2; HashMap hm = new HashMap(); for(int n : nums) { hm.put(n, hm.getOrDefault(n, 0) + 1); } if(hm.size() > max) { answer = max; } else { answer = hm.size(); } return answer; } } 이제 9-13번째 줄까지는 어떻게 하는지 알겠는데 그 밑에 15-19번째 줄... 까지를 어떻게 계산해야하지 고민하고 있었다.... 그래서 다른 분 코드를 참고하기로 했다... [프로그래머스]..
내 코드 (틀림) import java.util.*; class Solution { public String solution(String[] participant, String[] completion) { String answer = ""; HashMap map = new HashMap(); for(int i=0; i < completion.length; i++) { int cnt = 1; if(map.containsKey(completion[i])) { cnt = map.get(completion[i]) + 1; } map.put(completion[i], cnt); } for(int i = 0; i < participant.length; i++) { if(!map.containsKey(particip..
imname1am
'해시' 태그의 글 목록 (2 Page)