본문 바로가기

분류 전체보기

(165)
[LeetCode] (Easy) Palindrome Number 문제 Given an integer x, return true if x is a palindrome , and false otherwise. Example 1: Input: x = 121 Output: true Explanation: 121 reads as 121 from left to right and from right to left. Example 2: Input: x = -121 Output: false Explanation: From left to right, it reads -121. From right to left, it becomes 121-. Therefore it is not a palindrome. Example 3: Input: x = 10 Output: false Explanat..
[LeetCode] (Medium) Reverse Integer * 문제 Given a signed 32-bit integer x, return x with its digits reversed. If reversing x causes the value to go outside the signed 32-bit integer range [-231, 231 - 1], then return 0. Assume the environment does not allow you to store 64-bit integers (signed or unsigned). Example 1: Input: x = 123 Output: 321 Example 2: Input: x = -123 Output: -321 Example 3: Input: x = 120 Output: 21 정답 코드 class S..
[LeetCode] (Easy) Two Sum ** 문제 Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target. You may assume that each input would have exactly one solution, and you may not use the same element twice. You can return the answer in any order. Example 1: Input: nums = [2,7,11,15], target = 9 Output: [0,1] Explanation: Because nums[0] + nums[1] == 9, we return [0, 1]...
[Hacker Rank] (Easy) Time Conversion 문제 Given a time in -hour AM/PM format, convert it to military (24-hour) time. Note: - 12:00:00AM on a 12-hour clock is 00:00:00 on a 24-hour clock. - 12:00:00PM on a 12-hour clock is 12:00:00 on a 24-hour clock. Example Return '12:01:00'. Return '00:01:00'. Function Description Complete the timeConversion function in the editor below. It should return a new string representing the input time in ..
[Hacker Rank] (Easy) Grading Students 문제 HackerLand University has the following grading policy: Every student receives a in the inclusive range from to . Any less than is a failing grade. Sam is a professor at the university and likes to round each student's according to these rules: If the difference between the and the next multiple of is less than , round up to the next multiple of . If the value of is less than , no rounding oc..
[Hacker Rank] (Easy) Compare the Triplets 문제 Alice and Bob each created one problem for HackerRank. A reviewer rates the two challenges, awarding points on a scale from 1 to 100 for three categories: problem clarity, originality, and difficulty. The rating for Alice's challenge is the triplet a = (a[0], a[1], a[2]), and the rating for Bob's challenge is the triplet b = (b[0], b[1], b[2]). The task is to find their comparison points by c..
[백준] (14681번) 사분면 고르기 문제 흔한 수학 문제 중 하나는 주어진 점이 어느 사분면에 속하는지 알아내는 것이다. 사분면은 아래 그림처럼 1부터 4까지 번호를 갖는다. "Quadrant n"은 "제n사분면"이라는 뜻이다. 예를 들어, 좌표가 (12, 5)인 점 A는 x좌표와 y좌표가 모두 양수이므로 제1사분면에 속한다. 점 B는 x좌표가 음수이고 y좌표가 양수이므로 제2사분면에 속한다. 점의 좌표를 입력받아 그 점이 어느 사분면에 속하는지 알아내는 프로그램을 작성하시오. 단, x좌표와 y좌표는 모두 양수나 음수라고 가정한다. 첫 줄에는 정수 x가 주어진다. (−1000 ≤ x ≤ 1000; x ≠ 0) 다음 줄에는 정수 y가 주어진다. (−1000 ≤ y ≤ 1000; y ≠ 0) 점 (x, y)의 사분면 번호(1, 2, 3, 4 ..
[백준] (11720번) 숫자의 합 문제 N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오. 첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다. 입력으로 주어진 숫자 N개의 합을 출력한다. - 입력 예시 - // (case 1) 1 1 // (case 2) 5 54321 // (case 3) 25 7000000000000000000000000 - 출력 예시 - // (case 1) 1 // (case 2) 15 // (case 3) 7 정답 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main { ..
[백준] (11654번) 아스키 코드 문제 알파벳 소문자, 대문자, 숫자 0-9중 하나가 주어졌을 때, 주어진 글자의 아스키 코드값을 출력하는 프로그램을 작성하시오. 알파벳 소문자, 대문자, 숫자 0-9 중 하나가 첫째 줄에 주어진다. 입력으로 주어진 글자의 아스키 코드 값을 출력한다. - 입력 예시 - // (case 1) A // (case 2) C // (case 3) 0 - 출력 예시 - // (case 1) 65 // (case 2) 67 // (case 3) 48 정답 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main { public static void main(String[]..
[백준] (9498번) 시험 성적 문제 시험 점수를 입력받아 90 ~ 100점은 A, 80 ~ 89점은 B, 70 ~ 79점은 C, 60 ~ 69점은 D, 나머지 점수는 F를 출력하는 프로그램을 작성하시오. 첫째 줄에 시험 점수가 주어진다. 시험 점수는 0보다 크거나 같고, 100보다 작거나 같은 정수이다. - 입력 예시 - // (case 1) 100 - 출력 예시 - // (case 1) A 정답 코드 import java.util.*; public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); int score = scan.nextInt(); System.out.println(solution(score)); } p..
[백준] (8958번) OX퀴즈 문제 "OOXXOXXOOO"와 같은 OX퀴즈의 결과가 있다. O는 문제를 맞은 것이고, X는 문제를 틀린 것이다. 문제를 맞은 경우 그 문제의 점수는 그 문제까지 연속된 O의 개수가 된다. 예를 들어, 10번 문제의 점수는 3이 된다. "OOXXOXXOOO"의 점수는 1+2+0+0+1+0+0+1+2+3 = 10점이다. OX퀴즈의 결과가 주어졌을 때, 점수를 구하는 프로그램을 작성하시오. 첫째 줄에 테스트 케이스의 개수가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 길이가 0보다 크고 80보다 작은 문자열이 주어진다. 문자열은 O와 X만으로 이루어져 있다. 각 테스트 케이스마다 점수를 출력한다. - 입력 예시 - // (case 1) 5 OOXXOXXOOO OOXXOOXXOO OXOXOXOXOX..
[백준] (2920번) 음계 문제 다장조는 c d e f g a b C, 총 8개 음으로 이루어져있다. 이 문제에서 8개 음은 다음과 같이 숫자로 바꾸어 표현한다. c는 1로, d는 2로, ..., C를 8로 바꾼다. 1부터 8까지 차례대로 연주한다면 ascending, 8부터 1까지 차례대로 연주한다면 descending, 둘 다 아니라면 mixed 이다. 연주한 순서가 주어졌을 때, 이것이 ascending인지, descending인지, 아니면 mixed인지 판별하는 프로그램을 작성하시오. 첫째 줄에 8개 숫자가 주어진다. 이 숫자는 문제 설명에서 설명한 음이며, 1부터 8까지 숫자가 한 번씩 등장한다. 첫째 줄에 ascending, descending, mixed 중 하나를 출력한다. - 입력 예시 - // (case 1) 1..
[백준] (2884번) 알람 시계 문제 상근이는 매일 아침 알람을 듣고 일어난다. 알람을 듣고 바로 일어나면 다행이겠지만, 항상 조금만 더 자려는 마음 때문에 매일 학교를 지각하고 있다. 상근이는 모든 방법을 동원해보았지만, 조금만 더 자려는 마음은 그 어떤 것도 없앨 수가 없었다. 이런 상근이를 불쌍하게 보던, 창영이는 자신이 사용하는 방법을 추천해 주었다. 바로 "45분 일찍 알람 설정하기"이다. 이 방법은 단순하다. 원래 설정되어 있는 알람을 45분 앞서는 시간으로 바꾸는 것이다. 어차피 알람 소리를 들으면, 알람을 끄고 조금 더 잘 것이기 때문이다. 이 방법을 사용하면, 매일 아침 더 잤다는 기분을 느낄 수 있고, 학교도 지각하지 않게 된다. 현재 상근이가 설정한 알람 시각이 주어졌을 때, 창영이의 방법을 사용한다면, 이를 언제로..
[백준] (2753번) 윤년 문제 연도가 주어졌을 때, 윤년이면 1, 아니면 0을 출력하는 프로그램을 작성하시오. 윤년은 연도가 4의 배수이면서, 100의 배수가 아닐 때 또는 400의 배수일 때이다. 예를 들어, 2012년은 4의 배수이면서 100의 배수가 아니라서 윤년이다. 1900년은 100의 배수이고 400의 배수는 아니기 때문에 윤년이 아니다. 하지만, 2000년은 400의 배수이기 때문에 윤년이다. 첫째 줄에 연도가 주어진다. 연도는 1보다 크거나 같고, 4000보다 작거나 같은 자연수이다. 첫째 줄에 윤년이면 1, 아니면 0을 출력한다. - 입력 예시 - // (case 1) 2000 // (case 2) 1999 - 출력 예시 - // (case 1) 1 // (case 2) 0 정답 코드 import java.io...
[백준] (2525번) 오븐 시계 문제 KOI 전자에서는 건강에 좋고 맛있는 훈제오리구이 요리를 간편하게 만드는 인공지능 오븐을 개발하려고 한다. 인공지능 오븐을 사용하는 방법은 적당한 양의 오리 훈제 재료를 인공지능 오븐에 넣으면 된다. 그러면 인공지능 오븐은 오븐구이가 끝나는 시간을 분 단위로 자동적으로 계산한다. 또한, KOI 전자의 인공지능 오븐 앞면에는 사용자에게 훈제오리구이 요리가 끝나는 시각을 알려 주는 디지털 시계가 있다. 훈제오리구이를 시작하는 시각과 오븐구이를 하는 데 필요한 시간이 분단위로 주어졌을 때, 오븐구이가 끝나는 시각을 계산하는 프로그램을 작성하시오. 첫째 줄에는 현재 시각이 나온다. 현재 시각은 시 A (0 ≤ A ≤ 23) 와 분 B (0 ≤ B ≤ 59)가 정수로 빈칸을 사이에 두고 순서대로 주어진다. ..
[백준] (2480번) 주사위 세개 문제 1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다. 같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다. 같은 눈이 2개만 나오는 경우에는 1,000원+(같은 눈)×100원의 상금을 받게 된다. 모두 다른 눈이 나오는 경우에는 (그 중 가장 큰 눈)×100원의 상금을 받게 된다. 예를 들어, 3개의 눈 3, 3, 6이 주어지면 상금은 1,000+3×100으로 계산되어 1,300원을 받게 된다. 또 3개의 눈이 2, 2, 2로 주어지면 10,000+2×1,000 으로 계산되어 12,000원을 받게 된다. 3개의 눈이 6, 2, 5로 주어지면 그중 가장 큰 값이 6이므로 6×100으로 계산되어 600원을 상금으로 받게..
[백준] (2444번) 별 찍기 - 7 문제 예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요. - 입력 예시 - 5 - 출력 예시 - * *** ***** ******* ********* ******* ***** *** * 정답 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int num = Integer.parseInt(br.readLine())..
[백준] (2443번) 별 찍기 - 6 문제 첫째 줄에는 별 2×N-1개, 둘째 줄에는 별 2×N-3개, ..., N번째 줄에는 별 1개를 찍는 문제 별은 가운데를 기준으로 대칭이어야 한다. - 입력 예시 - 5 - 출력 예시 - ********* ******* ***** *** * 정답 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int num ..
[백준] (2442번) 별 찍기 - 5 문제 첫째 줄에는 별 1개, 둘째 줄에는 별 3개, ..., N번째 줄에는 별 2×N-1개를 찍는 문제 별은 가운데를 기준으로 대칭이어야 한다. 첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다. - 입력 예시 - 5 - 출력 예시 - * *** ***** ******* ********* 정답 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamRea..
[3주 차 회고] 우테코 프리코스 5기 (feat. 우아한테크코스) - 총 4주 과정 (22.10.26 ~ 22.11.22) - 100% 온라인 진행 - 수강료 무료 3주 차 학습일지 (22.11.10 ~ 11.16) - 문제 1 (로또 만들기) GitHub - meena2003/java-lotto: 로또 미션을 진행하는 저장소 로또 미션을 진행하는 저장소. Contribute to meena2003/java-lotto development by creating an account on GitHub. github.com 로또 만들기란 미션명을 보고 첫인상은 "우와! 재미있겠다"였다. 기본적으로 '로또'라고 하면 무작위 숫자를 추출해 비교하는 기능을 바로 떠올린다. 생각보다 요구사항이 복잡하지 않을 것 같아서 부담이 줄어들었다. 실제 입력값으로 금액을 받으면 1,000원 ..
[프로그래머스] (Lv.1) 크레인 인형뽑기 게임 문제 게임개발자인 "죠르디"는 크레인 인형뽑기 기계를 모바일 게임으로 만들려고 합니다. "죠르디"는 게임의 재미를 높이기 위해 화면 구성과 규칙을 다음과 같이 게임 로직에 반영하려고 합니다. 게임 화면은 "1 x 1" 크기의 칸들로 이루어진 "N x N" 크기의 정사각 격자이며 위쪽에는 크레인이 있고 오른쪽에는 바구니가 있습니다. (위 그림은 "5 x 5" 크기의 예시입니다). 각 격자 칸에는 다양한 인형이 들어 있으며 인형이 없는 칸은 빈칸입니다. 모든 인형은 "1 x 1" 크기의 격자 한 칸을 차지하며 격자의 가장 아래 칸부터 차곡차곡 쌓여 있습니다. 게임 사용자는 크레인을 좌우로 움직여서 멈춘 위치에서 가장 위에 있는 인형을 집어 올릴 수 있습니다. 집어 올린 인형은 바구니에 쌓이게 되는 데, 이때..
[Java] 배열 깊은 복사, 얕은 복사 ( feat. 원소가 객체라면? ) 문제점 ) 객체를 요소로 가진 A 배열이 있다. 새로운 B 배열을 만들고 A 배열의 요소들을 복사해서 저장하고 싶다. A 배열의 객체 요소를 변경해도 B 배열 내부의 요소들은 영향을 받지 않아야 한다. 어떻게 해야 할까? 해결책 ) 깊은 복사를 배열 자체만 하면 안 된다. 배열 내부에 저장된 요소 하나하나 깊은 복사 해서 저장해야 한다. 배열을 복사하는 방법은 크게 2 가지다. 얕은 복사 (Shallow Copy) 얕은 복사는 해당 배열의 '주소값'을 복사하는 것이다. 따라서 원본 배열의 주소값을 복사했기 때문에 원본 배열의 요소를 변경하면 복사된 배열도 동일하게 수정된다. int[] original = {1, 2, 3, 4, 5}; int[] copyArray = original; // 얕은 복사 or..
[2주 차 회고] 우테코 프리코스 5기 (feat. 우아한테크코스) - 총 4주 과정 (22.10.26 ~ 22.11.22) - 100% 온라인 진행 - 수강료 무료 2주 차 학습일지 (22.11.03 ~ 11.09) - 문제 1 (숫자 야구 게임) GitHub - meena2003/java-baseball: 숫자 야구 게임 미션을 진행하는 저장소 숫자 야구 게임 미션을 진행하는 저장소. Contribute to meena2003/java-baseball development by creating an account on GitHub. github.com 이번 주 미션은 '숫자 야구 게임'을 만드는 것이다! 사실 숫자 야구 게임을 한 번 만들어본 기억이 있어 내심 안심이 됐다. 하지만 시작부터 난관이었다. 왜냐하면 숫자 야구 게임을 구현하는 것보다 코드를 작성하는 순서와..
[1주 차 회고] 우테코 프리코스 5기 (feat. 우아한테크코스) - 총 4주 과정 (22.10.26 ~ 22.11.22) - 100% 온라인 진행 - 수강료 무료 우테코 프리코스를 신청한 이유 과거 내 질문에 대한 현업 개발자 지인의 대답이 아직도 귓가에 생생하다. "좋은 프로그래밍 부트캠프를 소개해달라고? 혹시 우아한테크코스라고 알아?" 이미 신청 기간이 지나버린 아쉬움을 달래고자 스스로에게 "여긴 아무나 들어갈 수 없어. 지금 신청해도 안될 거야"라고 위로했다. 조금 더 알아보니 실제로 엄청난 경쟁률에 내가 덤빌 수 있는 수준이 아니라는 것이 확실했다. 당시엔 기본적인 프로그래밍 문법도 모르던 완전 초보였고, 단 하나의 알고리즘 문제도 풀어보지 않았던 시기였다. 그렇게 시간이 흘렀다. 혼자서 책으로, 동영상을 Java 문법을 익히고 자료구조에 대해 접하며, SQL..
[MySQL] 데이터베이스, 테이블, 열 정보를 찾는 쿼리문 MySQL에서 쿼리문을 작성할 때 내가 찾고자는 데이터베이스명, 테이블명, 열 이름이 기억나지 않을때가 있다. 그럴때마다 Workbench의 [navigator]를 통해 확인할 수 있지만, CLU 상황에선 여의치가 않다. 그래서 쿼리문으로 해당 정보를 찾는 방법을 알면 유용할 것이다. 가장 먼저 어떤 ' 데이터베이스 '가 있는지 확인하는 명령어다. [ SHOW DATABASES ; ] SHOW DATABASES; 어떤 ' 테이블 '이 있는지 확인하는 명령어는 다음과 같다. [ SHOW TABLE STATUS ; ] 단순히 테이블의 이름만 확인하고 싶으면 더 짧게 가능하다. [ SHOW TABLES ; ] SHOW TABLE STATUS; // 자세한 테이블 정보 SHOW TABLES; // 테이블명만 간..