import java.io.*;
import java.util.*;
class Solution {
public int solution(String[] want, int[] number, String[] discount) {
int answer = 0;
Vector<String> v = new Vector<>();
HashMap<String, Integer> map = new HashMap<>();
HashMap<Integer, Integer> sm = new HashMap<>();
for(int i=0;i<want.length;i++){
map.put(want[i],number[i]);
v.add(want[i]);
sm.put(i,0);
}
int disLen = discount.length;
for(int i=0;i<=disLen-10;i++){
for(int j=i;j<i+10;j++){
if(map.containsKey(discount[j])){
int val = sm.get(v.indexOf(discount[j]));
sm.put(v.indexOf(discount[j]), val+1);
}else
break;;
}
int sum = 0;
for(int k=0;k<sm.size();k++){
if(sm.get(k)==number[k])
sum++;
sm.put(k,0);
}
if(sum==want.length) answer++;
//System.out.println(sm.get(1));
}
return answer;
}
}
주어지는 숫자가 늘어날수록 자료구조에서 get이든 조회든 늘일수록 안좋다
처음 방식과 푸는 방식은 비슷한데 조회 횟수를 줄이니까 통과..
프로그래머스에서 푸는 거는 결국 계속 로그 찍어보면서 풀기
오늘의 회고
- 너무 조급해하지 말자
- 내일(4/5) 학습 예정 : 스프링부트 온라인 강의 듣기
'algorithm > 문제 풀이' 카테고리의 다른 글
백준 10974번 (모든 순열) 자바 Java (0) | 2024.04.06 |
---|---|
99클럽 코테 스터디 6일차 TIL - 프로그래머스 문자열 내 마음대로 정렬하기 (0) | 2024.04.06 |
99클럽 코테 스터디 2일차 TIL - 백준 11279 (최대 힙) java (0) | 2024.04.02 |
백준 10989번 (수 정렬하기 3) Java 11 계수 정렬 (0) | 2021.02.08 |
백준 2740번 (행렬 곱셈) 자바 Java11 (0) | 2021.01.26 |