https://school.programmers.co.kr/learn/courses/30/lessons/92334신고자가 동일한 사람을 중복 신고하는 것을 방지하기 위해 HashSet을 사용함(시간초과 방지)HashMap을 사용할 때 value 값에 Set,
https://school.programmers.co.kr/learn/courses/30/lessons/118666HashMap 사용시 Integer value값은 증위연산자 등을 이용하여 증가시킬 수 없음. 따로 score 배열을 정의하여 사용함Switch문
🔔 같은 숫자는 싫어 > 단순 중복 제거가 아닌 연속 중복 제거라는 것을 잊지말자 > list를 사용할 경우 for문에서 인덱스를 이용해 이전 숫자와 비교할 경우 문제 발생함. 이럴 때는 while문을 비교하는 것이 나음 > 이전 숫자를 담는 변수로 비교하는 것
문제에 대한 접근 방식이 중요한 문제. 무작정 풀려고하면 시간만 잡아먹고 해결하지 못한다...천천히 생각해보면 매우 간단함 ㅠ공통의 기준을 잡아줘야한다. 모든 명함은 가로가 세로보다 길어야한다고 정한다. 즉, 세로가 더 긴 명함이 있으면 돌려놓고 가장 큰 가로길이과 세
굳이 복잡하게 생각했던 문제..처음에는 최고순위를 찾을 때 0의 개수만큼 당첨번호 개수를 추가해야하는데, List를 이용하여 원래 로또번호와 겹치지 않고(같은 번호가 2개 이상이면 안된다는 규칙) 0의 개수를 넘지않게 세면서 당첨번호 개수를 추가했다.정답이긴 하나 쓸데
String 관련 함수substring(시작 인덱스, 포함할 인덱스 + 1)문자열의 인덱스는 0~문자열의 길이 -1 이다예) 0~3번까지 문자열을 자르고 싶으면 substring(0,4)replace(바꿔야되는 문자열 , 변경 후 문자열)replaceAll(바꿔야되는
문자열을 숫자로 변환 : Integer.valueOf() , Integer.parseInt()숫자를 문자열로 변환 : String.valueOf() , Integer.toString()
http://school.programmers.co.kr/learn/courses/30/lessons/67256/solution_groups?language=javaHashMap(key , value)에서 value에 int\[] 배열 사용가능map.put(k
https://school.programmers.co.kr/learn/courses/30/lessons/64061누가봐도 stack을 이용하라고 준 문제뽑을 수 있는 인형을 발견하면 break문으로 인형뽑기를 종료시켜야한다.
🔔 없는 숫자 더하기 > Counting 정렬과 비슷한 방식으로 풀었다 > 0~9까지의 모든 합이 45 이므로 45에서 있는 숫자를 빼는 방법도 있다. 🔑 java 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/76501삼항 연산자로 깔끔하게 풀었다
https://school.programmers.co.kr/learn/courses/30/lessons/70128
https://school.programmers.co.kr/learn/courses/30/lessons/12977소수 : 1과 자기자신만을 약수로 가지는 수판별법 : 반복문을 이용하여 2부터 자기자신 이전까지의 수로 나눴을 때 나머지가 0인지 아닌지로 판별 가
집합(set)은 중복 원소를 허용하지 않는다.
해시로 풀라고 준 문제지만 해시로 풀 방법을 빠르게 떠오르지 못했다..그래서 내 방식대로 풀어버렸다.참가자들과 완주한 사람들 배열을 정렬해서 비교하는 방식이다.해시맵을 사용할 경우 getOrDefault를 이용해야한다. 해시맵은 중복키를 허용하지 않는 점을 이용해야한다
조카가 말할 수 있는 옹알이들은 list에 저장함\-> contains()를 사용해서 단어가 옹알이 리스트에 존재하는지 판단함입력받은 babbling\[] 단어를 순차적으로 분석함token에 한글자씩 붙여넣다가 list에 존재하는 옹알이가 되면 token을 비움단, 같
문제 푸는 것보다 읽는게 더 힘든거 같은 문제 ㅎ그냥 바로 입출력 예제와 설명보는게 이해하기 더 쉽다!judge() : 올바른 괄호 문자열 판단String s를 받아서 첫 문자가 ) 이면 -> false( -> left ++) 이면 left를 감소시켜서 괄호가 쌍을 이
min(최솟값)은 String s의 길이로 초기화함.i(1 ~ s.length()/2)만큼 문자열을 자르면서 for문 반복\-> s.length()/2이상 만큼 자르면 어차피 2번 이상 반복 불가능함past(이전 토큰을 저장)에 문자열을 i만큼 잘라서 초기화함.i만큼
LV3이고 내가 가장 못하는 DP라서 이해하는데 좀 오래 걸렸다..완전 탐색은 금액이 100,000까지 가능해서 시간 초과가 발생할 것이다.dpi == i개의 화폐 단위를 사용했을 때 j원을 만들 수 있는 경우의 수라고 하자문제 예시를 먼저 직접 표로 그려보면, 위와
프로그래머스 미로 탈출 명령어보자마자 BFS 문제인걸 알았다. 완전 탐색 dfs로 풀기에는 2의 2500승이라서 안될거 같다..다만 중복 방문이 가능해서 일단 방문 처리를 안하고 BFS로 했을 때는 시간 초과가 발생한다.따라서 방문 처리를 하는 대신, 방문하지 않았거나