풀이1.입력받은 두 문자를 str.toUpperCase()로 대문자로 만들기2.str.length까지 for문 돌려서 입력받은 문자 c가 문자열 s의 문자와 같으면 answer ++ 주요 기능 String.toUpperCase() : 문자열 대문자 변경Character
풀이1.동적배열로 answer를 초기화한다.2.첫 숫자는 무조건 포함하는 조건이기 때문에 .add()를 이용해서 삽입3.answeri인덱스보다 answeri-1인덱스가 더 크면 .add()를 이용해서 삽입 주요 기능 answer.add(numberi) : add를 이용
풀이1.쉬운 문제를 풀더라도 입력값에 의해서 런타임 날 수가 있다.2.시간 복잡도를 고려해서 for문으로 다 도는게 아닌, while문으로 필요한 조건에서만 반복하는게 좋다.3.p1,p2 투 포인터를 이용해 비교해가면서 값을 저장한다. 주요 기능 Arrays.sort
풀이1.HashMap으로 Map을 만든다.2.toCharArray를 이용해 문자열을 배열로 만들어서 forEach문으로 탐색한다.3.map.put('key',value)을 이용해서 집어넣는다. 근데 여기서 value값은 숫자(갯수)를 뜻하는데 map.getOrDefau
풀이2중 for문으로 배열의 요소 하나하나를 비교해가면서 최댓값 알고리즘 적용.풀이1.i는 라운드 횟수이다.2.j와j+1을 비교하면서 i가 증가할때마다 최댓값이 젤뒤로 가니까 -i를 해준다. j+1과 비교하기 때문에 -1도 해준다.풀이arri를 tmp라는 변수로 두고,
2.이진수 출력(재귀)
DFS/BFS 유형 1.합이 같은 부분집합 풀이 1.부분집합을 2개로 나눴을 때 두 부분집합들의 합이 같아야한다 --> 절반이 총합이랑 같아야한다. 2.그것을 기준으로 DFS시작 2.바둑이 승차(DFS) 풀이 첫 줄에 입력되는 무게를 넘지않게 최대한 큰 수를 구
풀이1.h,w를 받을 수 있는 Body객체를 생성해서 ArrayList에 추가한다.2.Comparable을 상속받아서 키 내림차순으로 정렬하고 Collections.sort(arr)을 해준다.3.키는 이미 정렬되어 있기 때문에 키는 x가 다음으로 갈수록 무조건 작고,
풀이1.잘 보면 피보나치풀이1.잘 보면 피보나치2.개울을 아예 건너야하기 때문에 다음 dyn+1의 값을 구해야함.풀이1.수열 길이를 저장할 dy\[]를 선언.2.수열 크기만큼 i가 돌고 j가 해당 i-1위치에서 --로 0까지 돌면서 if (arrj < arri &
선택정렬 삽입정렬 버블정렬
이분 검색 알고리즘 > 이분 검색 알고리즘은 일반 순차적 검색 알고리즘보다 시간복잡도가 낮아서 매율 효율적인 알고리즘이다. 사용법 1.일단 배열이 오름차순으로 정렬되어야한다. 2.배열의 중간값(mid)을 구해서 찾으려고 하는 target값보다 큰지 작은지 여부에따라서
결정알고리즘
조합 경우의 수 이 식을 구현 한 문제. 메모이제이션 활용. 수열 추측하기 수열 추측하기 수열 추측하기는 규칙을 가진다 3 1 2 4 4 3 6 7 9 16 입력 4 16 여기서 4자리 숫자로 16을 만드는 조합경우의수 의 숫자는 3 1 2 4 인데 4자리 숫자의 조합 경우 -> '3C0 3C1 3C2 3C3' 을 각각 해당 자리...
원더랜드에 문제가 생겼다. 원더랜드의 각 도로를 유지보수하는 재정이 바닥난 것이다.원더랜드는 모든 도시를 서로 연결하면서 최소의 유지비용이 들도록 도로를 선택하고 나머지 도로는 폐쇄하려고 한다. 도로를 공사하여 길을 최소비용으로 짓는 비용을 구하여라.입력9 121 2
문제 원더랜드에 문제가 생겼다. 원더랜드의 각 도로를 유지보수하는 재정이 바닥난 것이다. 원더랜드는 모든 도시를 서로 연결하면서 최소의 유지비용이 들도록 도로를 선택하고 나머지 도로는 폐쇄하려고 한다. 도로를 공사하여 길을 최소비용으로 짓는 비용을 구하여라. 풀이
문제
동전 교환