분류 전체보기
-
배열에 있는 수를 제곱을 한다음 나열을 하면 되는 문제이다. 기본적으로 반복문을 돌며 배열의 요소들을 제곱시킨 뒤 그 값들을 오름차순으로 배열을 해주면 된다. 배열을 오름차순으로 나열하는 것에는 여러가지 방법이 있겠지만 여기서는 java.util.Arrays 의 sort()라는 메소드를 사용했다. import java.util.Arrays; class Solution { public int[] sortedSquares(int[] nums) { for(int i = 0; i < nums.length; i++) { nums[i] = nums[i] * nums[i]; } Arrays.sort(nums); return nums; } } 매우 쉬운편
[리트코드] Introduction - Squares of a Sorted Array배열에 있는 수를 제곱을 한다음 나열을 하면 되는 문제이다. 기본적으로 반복문을 돌며 배열의 요소들을 제곱시킨 뒤 그 값들을 오름차순으로 배열을 해주면 된다. 배열을 오름차순으로 나열하는 것에는 여러가지 방법이 있겠지만 여기서는 java.util.Arrays 의 sort()라는 메소드를 사용했다. import java.util.Arrays; class Solution { public int[] sortedSquares(int[] nums) { for(int i = 0; i < nums.length; i++) { nums[i] = nums[i] * nums[i]; } Arrays.sort(nums); return nums; } } 매우 쉬운편
2023.11.29 -
주어진 숫자 배열에서 숫자의 자릿수가 짝수인 것의 개수를 세어야한다. String의 길이는 String.length() 를 사용하면 바로 알 수 있었다. 그래서 int도 length() 메소드를 사용할 수 있나 싶었는데 아니나 다를까 이렇게 쉬울 리가 없지..^^ int의 길이를 세는 방법을 서칭해봤다. Math.log10() 이라는 메소드가 있었다. log10이라니.. 있는지도 몰랐던 메소드였다.. log10(10) 이면 1을 반환하니 10은 두 자리 자연수이므로 숫자의 길이를 구하기 위해서는 log10(int) + 1을 해주면 된다. class Solution { public int findNumbers(int[] nums) { int count = 0; for(int i = 0; i < nums.l..
[리트코드] Introduction - Find Numbers with Even Number of Digits주어진 숫자 배열에서 숫자의 자릿수가 짝수인 것의 개수를 세어야한다. String의 길이는 String.length() 를 사용하면 바로 알 수 있었다. 그래서 int도 length() 메소드를 사용할 수 있나 싶었는데 아니나 다를까 이렇게 쉬울 리가 없지..^^ int의 길이를 세는 방법을 서칭해봤다. Math.log10() 이라는 메소드가 있었다. log10이라니.. 있는지도 몰랐던 메소드였다.. log10(10) 이면 1을 반환하니 10은 두 자리 자연수이므로 숫자의 길이를 구하기 위해서는 log10(int) + 1을 해주면 된다. class Solution { public int findNumbers(int[] nums) { int count = 0; for(int i = 0; i < nums.l..
2023.11.28 -
숫자로 된 배열이 주어졌을 때, 1이 연속되게 나오는 횟수가 제일 큰 것을 구해야 한다. 먼저 처음 들었던 생각은 '1 뒤에 1이 올 때와 1 뒤에 0이 올 때로 나눠서 풀어야하나..?' 였다. 그래서 시도했던 로직은 제일 마지막 인덱스와 나머지를 구분한 뒤 케이스를 나눠주는 것이었다. index 1 뒤에 1이 올 때, 1 뒤에 0이 올 때 index == nums.length - 1 일 때 -> 1일 때, 0일 때 class Solution { public int findMaxConsecutiveOnes(int[] nums) { int max = 0; int count = 0; for(int i = 0; i < nums.length; i++) { if(i <..
[리트코드] Introduction - Max Consecutive Ones숫자로 된 배열이 주어졌을 때, 1이 연속되게 나오는 횟수가 제일 큰 것을 구해야 한다. 먼저 처음 들었던 생각은 '1 뒤에 1이 올 때와 1 뒤에 0이 올 때로 나눠서 풀어야하나..?' 였다. 그래서 시도했던 로직은 제일 마지막 인덱스와 나머지를 구분한 뒤 케이스를 나눠주는 것이었다. index 1 뒤에 1이 올 때, 1 뒤에 0이 올 때 index == nums.length - 1 일 때 -> 1일 때, 0일 때 class Solution { public int findMaxConsecutiveOnes(int[] nums) { int max = 0; int count = 0; for(int i = 0; i < nums.length; i++) { if(i <..
2023.11.28 -
리트코드 Explore -> Learn 섹션에 접속하기 리트코드의 explore 접속 URL https://leetcode.com/explore/ Explore - LeetCode LeetCode Explore is the best place for everyone to start practicing and learning on LeetCode. No matter if you are a beginner or a master, there are always new topics waiting for you to explore. leetcode.com Learn 섹션 푸는 순서
[리트코드] 처음부터 공부하는 방법리트코드 Explore -> Learn 섹션에 접속하기 리트코드의 explore 접속 URL https://leetcode.com/explore/ Explore - LeetCode LeetCode Explore is the best place for everyone to start practicing and learning on LeetCode. No matter if you are a beginner or a master, there are always new topics waiting for you to explore. leetcode.com Learn 섹션 푸는 순서
2023.11.28 -
[Bronze II] 먼저 알파벳 수와 맞게 배열을 선언한 후 -1을 전부 할당한다. 그리고 문자열의 길이만큼 반복문을 돌며 아까 선언한 배열에 해당 알파벳이 해당하는 인덱스의 값이 -1인 경우 문자열의 인덱스를 할당해주면 된다. import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String str = br.readLine(); int[] iarr = new int[26]; for(int i = 0; i < 26; i++) { iarr[i] = -1;..
[백준] 문자열 - 10809_알파벳 찾기 Java[자바][Bronze II] 먼저 알파벳 수와 맞게 배열을 선언한 후 -1을 전부 할당한다. 그리고 문자열의 길이만큼 반복문을 돌며 아까 선언한 배열에 해당 알파벳이 해당하는 인덱스의 값이 -1인 경우 문자열의 인덱스를 할당해주면 된다. import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String str = br.readLine(); int[] iarr = new int[26]; for(int i = 0; i < 26; i++) { iarr[i] = -1;..
2023.10.30 -
[Bronze IV] 숫자의 범위가 int나 long을 넘어가므로 String으로 받아 처리를 한다. 또한 char를 int로 변환했으니 아스키코드를 참고하거나 '0'을 빼줘야한다. import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.valueOf(br.readLine()); String number = br.readLine(); int sum = 0; for(int i = 0; i < N; i++) { sum += numb..
[백준] 문자열 - 11720_숫자의 합 Java[자바][Bronze IV] 숫자의 범위가 int나 long을 넘어가므로 String으로 받아 처리를 한다. 또한 char를 int로 변환했으니 아스키코드를 참고하거나 '0'을 빼줘야한다. import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.valueOf(br.readLine()); String number = br.readLine(); int sum = 0; for(int i = 0; i < N; i++) { sum += numb..
2023.10.30 -
[Bronze I] 이번 문제는 최대값을 잘 찾으면 쉽게 갈 수 있는 문제이다. 최대값은 Arrays 클래스의 sort() 메소드를 사용하여 제일 마지막 인덱스에 해당하는 값을 가져오면 된다. import java.util.*; import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int M = Integer.valueOf(br.readLine()); StringTokenizer st = new StringTokenizer(br.readLine(), " ..
[백준] 1차원 배열 - 1546_평균 Java[자바][Bronze I] 이번 문제는 최대값을 잘 찾으면 쉽게 갈 수 있는 문제이다. 최대값은 Arrays 클래스의 sort() 메소드를 사용하여 제일 마지막 인덱스에 해당하는 값을 가져오면 된다. import java.util.*; import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int M = Integer.valueOf(br.readLine()); StringTokenizer st = new StringTokenizer(br.readLine(), " ..
2023.10.30 -
[Bronze II] 이번 문제는 while문을 활용하면 된다. i와 j가 주어졌을 때, i가 j보다 작으면 i와 j번째 바구니를 바꾼 후 i는 ++를 j는 --를 하면 된다. import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine(), " "); int N = Integer.valueOf(st.nextToken()); int ..
[백준] 1차원 배열 - 10811_바구니 뒤집기 Java[자바][Bronze II] 이번 문제는 while문을 활용하면 된다. i와 j가 주어졌을 때, i가 j보다 작으면 i와 j번째 바구니를 바꾼 후 i는 ++를 j는 --를 하면 된다. import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine(), " "); int N = Integer.valueOf(st.nextToken()); int ..
2023.10.30