step 1. 문제 설명 딱 이문제를 보자마자, 이런저런 조건을 주는 if문을 사용해서 풀면 되겠다 라고 저는 생각해봤지만 풀다보닌까, 굳이 if문을 주지않고도 풀 수 있겠다 라는 생각이 들었습니다. 그 방법은 그냥 처음부터 변수 값을 초기화시켜두고 그에 맞춰 입력값에 더하기 빼기 형식으로 해주면은 간단하게 끝나는 것 이였습니다. 1) 변수선언 2) 입력 3) 출력 (println이 아닌 직접 " " 를 통해 띄어 쓰기를 해줘야함) step 2. 코드구현 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int king = 1; int..
step 1. 문제 설명 저는 자신감 있게 바로 풀었다고 2,3번 해봤는데 왜 자꾸 실패가 나오는지 알지 못했습니다. 그리고 왜 정답률이 50%인줄 깨달았습니다 당연하게 int,long타입을 변수 A,B를 만들어 입력받은 후 출력하는 문제라고 생각했지만 그게 아니었습니다. 최대 10진수로 1000자리를 넘을 수 있다는 조건이 있으므로, int나long타입을 범위를 넘어가는 수가 입력될 수 있기 때문에 BigInteger 클래스를 사용해서 풀어야 합니다. 그리고 BigInteger에 있는 메서드인 add(더하기), subtract(빼기) , multiply(곱하기) 를 사용해서 풀 수 있습니다. step 2. 코드 구현하기 import java.io.BufferedReader; import java.io...
이전글 : 2023.07.27 - [알고리즘(Java)/백준] - [Java]백준11720_숫자의 합 구하기 백준1546_평균구하기 step 1. 문제 분석하기 - 예제입력에서 3 -> 시험을 본 과목의 개수 / 40 80 60 -> 각 과목의 시험 성적 - 평균구하기 (M=최대수) (입력값a+b+c)*100 / M / 3 ->평균 step 2. 손으로 써가면서 풀어보기 step 3. 슈도코드 작성하기 1) 변수 N에 과목의 수 입력받기 2) 길이가 N인 1차원 배열 A[] 선언하기 3) for문으로 A[] 길이만큼 반복하기 { A[i]에 각 점수 저장하기 } 4) for(A[] 길이 만큼 반복하기) { 최고점은 변수 max에 , 총점은 변수 sum에 저장하기 - > 공식 = sum*100 / max /..
백준11720_숫자의 합 구하기 1) 문제 분석하기 1-1) N의 범위가 1부터 100까지 이므로 int형, long형과 같은 숫자형으로 담을 수 없다 1-2) 문자열형태로 입력받고 이를 문자열 배열로 변환 후, 문자 배열값을 순서대로 읽어오면서 숫자형으로 변환해 더해야 합니다. 1-3) 적절한 함수 사용 - 입력 : Scanner - String타입 -> char타입 변환후 배열 : tocharArray - for 반복문 2) 손으로 써가며 풀어보기 3) 슈도코드 작성하기 (Pseudo-code란?프로그램의 진행 과정을 단계별로 기록해 놓은 것. - N값 입력 받기 - N의 숫자를 입력받아 String형 변수 sNum에 저장 - sNum을 다시 char[]형 변수 cNum[]에 변환하여 저장 - int..