약수의 합 문제 풀이 i는 1부터 n까지 반복문을 돌려서 n을 i로 나누었을 때 나머지가 0인 경우가 약수인 것이므로 이때의 i값을 answer에 더해주면 된다. 결과
문제 풀이 num을 2로 나누었을 때 나머지가 0이면 짝수이므로 answer에 "Even"을 할당해주고, 그외에는 홀수이므로 answer에 "Odd"를 할당해주면 된다. 결과
문제 풀이 for문을 돌려서 arr에 있는 모든 정수를 sum 변수에 합한다. 그런 다음 sum에서 arr의 길이를 나눠주면 되는데 sum의 타입이 int이므로 double형으로 결과값이 나오게 하기 위해 double로 캐스팅을 해주면 된다. 결과
문제 풀이 자릿수를 더하기 위해 먼저 n을 temp라는 문자열로 변환한다. 문자열 temp를 for문을 돌려서 digits 정수 배열에 charAt으로 문자 1개씩 뽑아서 저장시킨다. 그런 다음 digits 정수 배열을 for문 돌려서 원소 하나씩 뽑아서 answer에 더해주면 된다. 결과
문제 풀이 역순으로 배열을 생성해야 하기 때문에 각자릿수를 answer에 할당해줄 때 temp의 첫번째 문자가 answer의 마지막 원소로 들어가는 식으로 진행되도록 temp.length() - 1 - i로 인덱스값 접근식을 적어주면 된다. 결과
문제 풀이 Math.sqrt 메소드를 이용해서 n의 제곱근을 sqrt 변수에 저장한다. 그런다음 sqrt와 sqrt의 정수부분만 추출하도록 한 sqrt.intValue()의 값이 같은 경우는 정수 제곱근이므로 answer에 sqrt에 1을 더한 값을 제곱한 것을 long 타입으로 형변환 한뒤 저장해준다. 같지 않은 경우에는 answer에 -1를 할당해주...
문제 풀이 결과
문제 풀이 결과
문제 풀이 Integer.parseInt 메소드를 이용하면 문자열을 간단하게 정수로 바꿀 수 있다. 결과
문제 풀이 각 자리수의 합을 sum에 저장하고나서 x를 sum으로 나눴을 때 나머지가 0인 경우 하샤드 수이므로 answer에 true를 할당해준다. 그외에는 false로 할당해준다. 결과
문제 풀이 각 자릿수를 정수 배열 digits에 저장하고 digits을 오름차순으로 정렬한다. 그런다음 array 배열에 각 요소 값들이 digis.length - 1 - i 인덱스 접근식으로 내림차순으로 들어가게 한다. 그런다음 배열->문자열->long 타입으로 변환시켜주면 된다. 결과
문제 풀이 반복문을 i가 1부터 n까지 돌리게 하고 n에서 i를 나눴을 때 나머지가 1인 경우 answer에 i를 할당해주고 break문으로 반복문을 빠져나오게 해주면 나머지가 1이 되게하는 가장 작은 자연수가 answer가 되게 할 수 있다. 결과
문제 풀이 a와 b의 대소관계가 정해있지 않기 때문에 조건문으로 구분해준다. a가 b보다 작거나 같은 경우에는 for문을 i를 a부터 b까지 돌려서 i 값을 answer에 더해준다. 그외의 경우에는 for문을 i를 b부터 a까지 돌려서 i 값을 answer에 더해준다. 결과
문제 풀이 우선 num을 그대로 쓰면 오버플로우가 되기 때문에 long 타입의 n을 사용한다. while문을 n이 1이 아닐때까지 반복한다. n을 2로 나누었을 때 나머지가 0인 경우에는 n을 2로 나누고, 그외의 경우에는 n에 3을 곱한 후 1을 더해준다. 이 과정을 거친 뒤에 answer을 증가시킨다. 그런 다음 answer이 500보다 큰지 비교하...
문제 풀이 문자열 배열 seoul을 for문을 돌려서 seoul[i]의 문자열이 Kim일 때 김서방은 ~에 있다라고 지정해준다. 여기서 x는 위치를 말하는 것이므로 인덱스 번호인 i를 넣어주면 된다. 결과
문제 풀이 phonenumber를 for문으로 돌려서 인덱스 i가 phonenumber의 길이에서 4를 뺀 값 보다 작을 때는 answer에 *를 더해주고, 그 외에는 전화번호의 뒷 4자리들이기 때문에 charAt으로 전화번호를 answer에 더해주면 된다. 결과
문제 풀이 ArrayList 타입인 array를 생성하고 arr을 for문을 돌리면서 i번째 arr 원소를 divisor로 나누었을 때 나머지가 0인 경우 해당 원소값을 array에 삽입한다. 그런 다음 array의 사이즈가 0보다 클때는 array의 size만큼 answer를 생성하고 for문을 돌려서 array의 원소값들을 answer에 할당해준다....
문제 풀이 제일 작은 수 1개만 제거하면 되므로 answer 배열을 arr 길이에서 1을 뺀 만큼만 생성한다. 배열에서 가장 작은 수를 구해야 하므로 Integer.MAX_VALUE로 min 변수를 초기화해준다. arr의 길이가 1일 때는 제일 작은 수를 제거하면 빈 배열이 되는 경우이므로 answer를 size가 1인 배열로 생성하고 0번째에 -1을 ...
문제 풀이 absolutes에 대해서 for문을 돌리면서 signs의 i번째 값이 true일 때는 answer 값에 absolutes의 i번째 값을 더해주고, 그 외의 경우에는 answer 값에 absolutes의 i번째 값을 빼주면 된다. 결과
문제 풀이 각 숫자가 numbers에 있는지 없는지 0과 1로 구분하기 위한 array 배열을 생성한다. 그런 다음 이중포문을 도는데 numbers에 대하여 for문을 돌면서 array에 대하여 이중 포문을 돈다. j(각 숫자)가 numbers의 i번째 값과 일치한다면 해당 숫자는 들어있다는 뜻이므로 array의 j번째 값을 1로 변경해준다. 그런 다음...
문제 풀이 문자열 s의 길이가 2로 나누어떨어지는 경우에는 answer에 문자열 s의 길이에서 2를 나눈 값에 1을 뺀 인덱스를 뽑아 나온 문자를 더해주고, 문자열 s의 길이에서 2를 나눈 값의 인덱스를 뽑아 나온 문자를 더해주면 가운데 두글자를 반환하게 된다. 나누어떨어지지 않는 경우에는 문자열 s의 길이에서 2를 나눈 값의 인덱스를 뽑아 나온 문자만...
문제 풀이 "수박"이란 단어가 정수 n에 2를 나눈 만큼 반복되므로 for문을 i는 0부터 n 나누기 2까지 반복해서 answer에 "수박"을 더해준다. 그런 다음 n이 2로 나누어떨어지지 않는 경우에는 answer에 "수"를 더해주면 된다. 결과
문제 풀이 a와 b에 대해서 이중 포문을 돌리는데 i와 j가 일치할 때만(a[0]과 b[0]의 곱, a[1]과 b[1]의 곱 이렇게 진행되게 하기 위함) a의 i번째 값과 b의 j번째값의 곱을 answer에 더해주면 내적값이 된다. 결과
문제 풀이 문자열 s의 문자들을 저장시킬 ArrayList 타입 list를 생성한다. 그런 다음, list에 문자열 s의 문자들을 추가시킨다. Collections.sort 메소드의 두번째 매개변수에 Collections.reverseOrder 메소드를 통해서 list를 역순 정렬 시킨다. 그런 다음 for문을 돌려서 list의 문자들을 answer에 ...
문제 풀이 i는 left부터 right까지 for문을 돌리셔 j는 1부터 i까지 이중 for문을 돌려서 i를 j로 나누었을 때 나머지가 0인 경우 count를 증가시킨다. 이렇게 하면 i의 약수의 개수를 구할 수 있게 된다. 그런 다음 count가 2로 나누어떨어지면 answer에 i를 더하고 그렇지 않으면 i를 빼주면 된다. 결과
문제 풀이 문자열 s의 길이가 4또는 6인 경우 for문을 돌려서 문자 c가 숫자가 아니라면 answer을 false로 변경하고 for문을 빠져나오게 한다. 그리고 문자열 s의 길이가 4또는 6이 아닌 경우에도 answer을 false로 변경해주면 된다. 결과
문제 풀이 price의 i를 곱한 값을 sum에 누적을 해주고 나서, sum이 money보다 클 때만 sum과 money의 차를 answer에 할당해주면 된다. 결과
문제 풀이 arr1과 arr2의 행과 열의 길이가 모두 같으므로 한번의 이중 for문으로 행렬 덧셈의 결과를 answer 이차원 배열에 저장할 수 있다. 결과
문제 풀이 결과
문제 풀이 먼저 최대공약수를 저장할 변수 a를 1로 초기화한다. 최대공약수를 구하는 것이기 때문에 반복문은 1부터 n과 m 둘 중에서 작은 수까지 돌리면 된다. 최대공약수가 될 수 있는 가장 큰 수가 n이나 m이기 때문이다. 그리고 n과 m이 i로 나누었을 때 둘다 0이 되는 i를 a에 저장시킨다. 그런 다음 최소공배수를 저장할 변수 b를 1로 초기화한...
문제 풀이 이 문제는 스택을 이용해서 풀었다. 먼저 스택을 선언해주고, arr에 대하여 for문을 돌린다. 이때 stack이 비어있는 경우 arr의 i번째 요소를 stack에 push해준다. 비어있지 않은 경우 중에서 stack에 있는 상단의 요소를 뽑은 값이 arr의 i번째 요소와 같지 않으면 연속된 숫자가 아니기 때문에 stack에 넣어준다. 그런 ...
문제 풀이 일단 n번째 문자로 정렬시키기 위해 ArrayList 타입의 array를 생성한다. 그런 다음 strings 문자열 배열로 for문을 돌려서 i번째 strings 문자열의 n번째 문자를 가장 앞으로 배치하고 그 뒤에 i번째 문자열이 뒤로오게 해서 만든 문자열을 array의 원소로 삽입해준다. 그런 다음 array를 정렬한다. 마지막으로 for...
문제 풀이 commands의 각 배열마다 정렬시켜서 저장시킬 리스트 안에 리스트인 list를 생성한다. 그런 다음, commands를 통해 for문을 돌리고 중첩으로 j가 i번재 commands 배열요소중에 0번째 요소인 num1 - 1부터 i번째 commands 배열요소중에 1번째 요소인 num2까지 돌면서 temp ArrayList에 array의 n...
문제 풀이 while문으로 무한 반복을 한뒤 문자열 s가 one부터 nine까지 contains으로 포함여부를 확인하고 포함되는 문자열이 있다면 해당 문자열을 숫자 문자열로 replaceAll로 바꿔준다. 그런 다음 contains에 해당하지 않는 경우는 모두 숫자로 바뀐 경우이므로 break문으로 루프를 빠져나올 수 있게 한다. 그런 다음 문자열 s를...
문제 풀이 두 수의 합을 저장시킬 ArrayList 타입인 array를 생성한다. 그런 다음 i는 0부터 numbers.length까지 돌고 j는 i보다 1 큰수부터 nubers.length까지 이중 for문을 돌려서 각 배열의 원소끼리의 합을 구하게 한다. 여기서 array의 indexOf 메소드를 이용해서 numbers의 i번째 요소와 numbers...
문제 풀이 결과
문제 풀이 아픈 동물의 아이디와 이름을 조회하라고 하였으므로 WHERE문의 조건으로 INTAKECONDITION이 "Sick"인 경우로 지정해주고 ORDER BY ANIMALID를 통해 아이디순으로 조회가능하게 해주면 된다. 결과
문제 풀이 LIMIT문을 사용해서 상위 1개의 NAME 컬럼만 조회하도록 한다. 결과
문제 풀이 while문으로 무한 반복을 시키면서 마트에 주어야 하는 병 수 보다 상빈이가 가지고 있는 빈 병의 개수가 작은 경우에는 break문으로 빠져나온뒤 answer를 리턴하게 해준다. 마트에 주어야하는 병 수 보다 큰 경우에는 answer(받을 수 있는 콜라의 병 수)에 상빈이가 가지고 있는 빈 병위 수에서 마트에 주어야 하는 병 수를 나누어준 ...
문제 풀이 결과
문제 풀이 결과
문제 풀이 어린 동물은 INTAKE_CONDITION이 Aged가 아닐 것이기 때문에 WHERE문의 조건으로 Aged가 아닌 경우에만 조회되게 해주면 된다. 결과
문제 풀이 역순으로 출력하라고 하였으므로 ORDER BY의 DESC 속성을 사용하면 된다. 결과
문제 풀이 결과
문제 풀이 %를 사용해서 앞뒤 문자가 어떻든 강원도라는 문자열이 포함된 경우에는 조회될 수 있게 하면 된다. 결과
문제 풀이 COUNT 집계 함수를 사용하여 수를 조회할 수 있게 하고 IS NULL을 사용하여 AGE가 NULL인 사람의 수만 조회할 수 있게 하면 된다. 결과
문제 풀이 결과
문제 풀이 고용일자가 년월일만 출력되게 해야 하므로 DATE_FORMAT으로 변환해주면 된다. 결과
문제 풀이 전화번호가 NULL일때 NONE으로 표기되게 하기 위해 IFNULL함수를 사용하였다. 결과
문제 풀이 총주문량에관해서는 DESC를 이용하여 내림차순으로 정렬시키고 SHIPMET_ID는 오름차순으로 정렬하게 하면 된다. 결과
문제 풀이 모든 레코드를 조회하기 위해서는 그저 *만 사용하면 된다. 결과
문제 풀이 가장 늦게 들어온 동물의 DATETIME이 가장 클것이기 때문에 MAX 함수를 쓰면 된다. 결과
문제 풀이 IFNULL 함수를 사용하여 FREEZER_YN이 NULL인 경우 'N'문자열로 출력되게 한다. 그리고 경기도에 위치한 식품창고 목록을 출력해야 하므로 WHERE문에서 ADDRESS가 경기도 문자열을 포함한 경우 조회하게 하면 된다. (이때 %경기도% 로 지정하면 경기도 문자열을 포함한 모든 문자열이 조회된다.) 결과 ![](https://...
문제 풀이 YEAR 함수를 이용하여 DATE 타입에서 년도만 추출하여 해당 년도가 2021일 때만 집계될 수 있도록 한다. 결과
문제 풀이 가장 높은 판매가를 구하기 위해 MAX 함수를 사용하면 된다. 결과
문제 풀이 HashSet 자료구조를 이용하여 입력받은 데이터를 HashSet에 추가한뒤 크기를 비교하면 손쉽게 해결할 수 있는 문제다. 결과 <b
문제 풀이 큐를 이용해서 해결할 수 있는 문제다. 결과 문제 풀이 결과 ![](https://v
문제 풀이 우선순위 큐를 이용하여 풀 수 있다. 결과 문제 ![](https://velog.velcdn.com/images
문제 풀이 문제 풀이 결과 문제 ![](https://velog.velcdn.
문제 풀이 결과 문제 풀이 결과 ![](https://velog.velcdn.com/images
문제 풀이 결과 문제 ![](https://velog.velcdn.com/images/rosesua318/post/fbf1
문제 나의 풀이 이분탐색을 응용하여 해결할 수 있는 문제다. 결과