본문 바로가기

Java95

[프로그래머스/알고리즘] 문자열을 정수로 바꾸기 (자바/Java) 이 문제 같은 경우는 [Java]Integer.parseInt란 ? Integer.parseInt란 ? String을 Int형으로 바꾸는 함수 Integer.parseInt() 입니다. 문자열을 숫자로 변환시킴 pareseInt 함수는 Integer 클래스의 static 함수 public class JavaPractice { public static void main(String[] args) { Stri jkadv.tistory.com 문자열을 정수로 바꾸는 Integer.parseInt를 아느냐, 모르느냐, 알면 어떻게 쓰느냐 이정도의 문제인것같다. 문제 설명 문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요. 제한 조건 s의 길이는 1 이상 5이하입니다. s의 맨앞에는 .. 2022. 11. 18.
[프로그래머스/알고리즘] 두 정수 사이의 합 (자바/Java) 문제 설명 두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요. 예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다. 제한 조건 a와 b가 같은 경우는 둘 중 아무 수나 리턴하세요. a와 b는 -10,000,000 이상 10,000,000 이하인 정수입니다. a와 b의 대소관계는 정해져있지 않습니다. Step1. 문제분석 만약 3,5를 입력할 경우 3+4+5인 12값이, 그게 아닌 반대로 5,3을 입력해도 3+4+5인 12값이 출력된다. a의 값이 클지 b의 값이 클지는 모른다. 그렇다면 if문을 통해 a의 값이 클경우, 그게 아닐 경우 같은경우는 그냥 그 값만 리턴하면 되니 상관없을 거라고 생각했다.. 2022. 11. 18.
[프로그래머스/알고리즘] 가운데 글자 가져오기 (자바/Java) 문제 설명 단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. 재한사항 s는 길이가 1 이상, 100이하인 스트링입니다. Step1. 문제분석 문제는 이해를 했다. abcde 홀수 qwer 짝수 그중 홀수는 가운데 글자만, 짝수는 그 가운데에 2글자를 index가 0,1,2,3 이런식이면 1,2를 0,1,2,3,4,5,6,7 이런식이면 3,4를 가져오면 되는 것이였다. 이는 /2를 하고 거기서 -1을 하고 해서 2개를 가져오면 된다고 생각했다. 그래서 우선 홀수와 짝수를 구분짓기 위해 if (s.length() % 2 == 0){ 짝수 }else{ 홀수 } 이런식으로 나누었다. 그 후 짝수에서 나와야 하는 값 answer +.. 2022. 11. 18.
[프로그래머스/알고리즘] 짝수와 홀수 (자바/Java) 문제 설명 정수 num이 짝수일 경우 "Even"을 반환하고 홀수인 경우 "Odd"를 반환하는 함수, solution을 완성해주세요. 제한 조건 num은 int 범위의 정수입니다. 0은 짝수입니다. Step1. 문제분석 생각해보면 너무 쉬웠다. 나누기 2를 해서 나머지 값이 0이면 짝수 1이면 홀수 끝 아닌가 ? 그대로 문제를 풀어봤다. 프로그래머스에 있는 이 부분도 참고해서 풀었다. Step2. 문제풀이 코드 class Solution { public String solution(int num) { if (num % 2 == 0) { return ("Even"); } else { return ("Odd"); } } } 정수 num 값을 입력 받고 그 값을 2로 나눠서 0이 된다면 짝수 그 값이 아니라면.. 2022. 11. 18.
항해99 - Java 스터디 과제 Q1. 다음 코드를 실행하면 출력 결과로 5를 기대했는데 4가 출력되었습니다. 어디에서 잘못 작성된 것일까요? int var1=5; int var2=2; double var3=var1/var2; int var4=(int)(var3*var2); System.out.println(var4); 우선 정수와 실수의 개념을 알아야한다. int는 정수변수, double은 실수 변수이다. 일반적으로 정수 실수가 아닌 일반적으로 계산을 했을 경우는 5 ÷ 2 를 하면 2.5가 나오는게 우리가 배운 기본개념이다. 하지만 정수 5, 정수 2를 나누면 결과는 소수점 뒤 .5를 버리고 2만 산출된다. double var3=var1/var2; 결과는 2.5가 아닌 2가 나온 것이고 double var3의 값은 2가 아닌 2.0.. 2022. 11. 18.
[프로그래머스/알고리즘] 직사각형 별찍기 (자바/Java) 문제 설명 이 문제에는 표준 입력으로 두 개의 정수 n과 m이 주어집니다. 별(*) 문자를 이용해 가로의 길이가 n, 세로의 길이가 m인 직사각형 형태를 출력해보세요. 제한 조건 n과 m은 각각 1000 이하인 자연수입니다. Step1. 문제분석 우선 출력대로 만드는 것에는 문제가 없었다. 하지만 입력을 받고 그 값을 만드는 것에 대한 고민이 있었다. 일반적으로 가로5 세로3의 직사각형 별찍기를 하려면 for(int i = 0; i < 3 ; i++){ for(int j = 0; j < 5; j++){ System.out.print('*'); } System.out.print('\n'); //System.out.println(' '); 으로도 가능 } 이렇게 하면 된다. 하지만 여기서 입력값을 받는대로 .. 2022. 11. 18.
[백준/알고리즘] 11660 - 구간 합 구하기5 (자바/Java) 문제 N×N개의 수가 N×N 크기의 표에 채워져 있다. (x1, y1)부터 (x2, y2)까지 합을 구하는 프로그램을 작성하시오. (x, y)는 x행 y열을 의미한다. 예를 들어, N = 4이고, 표가 아래와 같이 채워져 있는 경우를 살펴보자. 1 2 3 4 2 3 4 5 3 4 5 6 4 5 6 7 여기서 (2, 2)부터 (3, 4)까지 합을 구하면 3+4+5+4+5+6 = 27이고, (4, 4)부터 (4, 4)까지 합을 구하면 7이다. 표에 채워져 있는 수와 합을 구하는 연산이 주어졌을 때, 이를 처리하는 프로그램을 작성하시오. 입력 첫째 줄에 표의 크기 N과 합을 구해야 하는 횟수 M이 주어진다. (1 ≤ N ≤ 1024, 1 ≤ M ≤ 100,000) 둘째 줄부터 N개의 줄에는 표에 채워져 있는 .. 2022. 11. 12.
[백준/알고리즘] 11659 - 구간 합 구하기4 (자바/Java) 문제 수 N개가 주어졌을 때, i번째 수부터 j번째 수까지 합을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄부터 M개의 줄에는 합을 구해야 하는 구간 i와 j가 주어진다. 출력 총 M개의 줄에 입력으로 주어진 i번째 수부터 j번째 수까지 합을 출력한다. 제한 1 ≤ N ≤ 100,000 1 ≤ M ≤ 100,000 1 ≤ i ≤ j ≤ N 합 배열 공식 S[i] = S[i-1] + A[i] 인덱스 1 2 3 4 5 배열 A 5 4 3 2 1 합 배열 S 5 9 12 14 15 합 배열 S[인덱스1] = S [인덱스1-1 = 0] + 5[인덱스1] - 5의 값이.. 2022. 11. 11.
[Java]StringTokenizer 문자열 분리하기 StringTokenizer란 ? StringTokenizer 클래스는 문자열을 구분자를 이용해 분리할 때 사용 BufferedReader 클래스의 메서드로 입력을 읽어들인다면 라인 단위로 읽어들일 수 밖에 없다. 꼭 BufferedReader 클래스만이 아니더라도, 스페이스 기준으로 혹은 컴마로 혹은 공백을 기준으로 문자열들을 분리한다던가, 특정 문자에 따라 문자열을 나누고 싶을 때 StringTokenizer를 사용합니다. 간단하게 String : 문자열을 Tokenizer : 토큰화한다. 이렇게 해석할 수 있습니다. 즉, 토큰은 분리된 문자열 조각으로, StringTokenizer 클래스는 하나의 문자열을 여러 개의 토큰으로 분리하는 클래스 StringTokenizer import import ja.. 2022. 11. 11.