안녕하세요. 이번에 해볼건 1차원 배열 문제입니다. 1. 예제 입력은 1~30의 숫자 중 출석한 인원의 숫자를 입력합니다. 2. 출력은 입력하지 않은 숫자가 나오면 됩니다. 다양한 방법이 있겠지만, 저는 boolean을 사용하여 해결하였습니다. package coding; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); // 입력할 수 있게 scanner 선언 boolean stuChk[] = new boolean[31]; // 출석한 학생을 확인하기 위해 boolean 형태로 배열 선언 for(int i = 0; i < 28; i+..
문제 이해 이번 문제는 한수를 찾는 문제였습니다. 문제의 설명대로 한수는 각 자리가 등차수열 이루는 수이고 등차수열은 연속된 두개의 수가 일정한 수열을 말합니다. 예를 들어 753 같은 경우 각 자리를 7, 5, 3으로 보고 -2씩 일정하게 감소하고 있습니다. 그리고 여기서 -2를 공차라고 합니다. 다른 예로는 222이 있는데 이 경우는 공차가 0입니다. 이러한 수를 한수라 하고 이 한수의 개수를 찾는 문제입니다. 여기서 1~9까지는 기본적으로 비교할 숫자가 없으므로 한수로 보는듯 합니다. 거기에 더해 10~99까지도 공차는 존재하지만 비교할 대상이 없으므로 한수로 치는거 같습니다. (문제에서 110을 입력했는데 99가 나온걸로 보아 1~99까지를 한수로 친거 같습니다.) 이 전재를 기본으로 깔고 문제를..
이번에 풀어볼 문제는 OX퀴즈 풀이입니다. 해당 문제를 풀면서 데이터를 변환하는 과정에서 시행 착오를 겪었습니다. 풀고 나면 쉬운 문제인 것 같습니다. 해당 문제에 대한 풀이 입니다. 1. 먼저 테스트 케이스의 개수가 주어져야 하기 때문에 테스트 케이스 개수를 입력 받습니다. 2. 저는 String 배열인 tcase 배열의 크기를 테스트 케이스 개수로 설정하였습니다. 3. tcase 배열안에 OX 예제를 입력 받습니다. 4. 입력받은 데이터를 가공해야 하는데 저는 char 형태로 1개씩 뽑아 O인지 비교를 했습니다. 5. 그 후 데이터가 O이면 plus = plus + 1 해주고 count += plus 처리를 했습니다. 그러면 O가 한개이면 +1이고 2개이면 plus는 +2가 되고 count + plu..
안녕하세요. 이번에는 백준 1546번 풀이 문제를 가져 왔습니다. 해당 문제입니다. 일단 이해를 돕기 위해 글로 풀이를 써보겠습니다. 1. 먼저 첫째 줄에 시험 본 과목의 개수 N이 주어진다라고 했으니 입력받는 값이 있어야 합니다. 2. 2번째 줄에 입력을 한줄로 한 것으로 보아 배열에 담아 주겠습니다. int n = in.nextInt(); int[] obj = new int[n]; 그러면 해당 형태로 담아질 것 같습니다. 3. 그 뒤에 for문으로 입력 값을 배열에 담아주고 4. 최대값을 골랐다라고 했으니 이제 최대값을 구해보겠습니다. 최대값도 마찬가지로 배열에서 하나씩 꺼내서 for문으로 비교해주면서 구해줍니다. 5. 최대값 비교가 완료되었으면, 모든 점수/M(최대값)*100으로 고쳤다고 쓰여있습니..