본문 바로가기
반응형

전체 글47

백준 [5597] 과제 안 내신 분..? - 자바 풀이 https://www.acmicpc.net/problem/5597 5597번: 과제 안 내신 분..? X대학 M교수님은 프로그래밍 수업을 맡고 있다. 교실엔 학생이 30명이 있는데, 학생 명부엔 각 학생별로 1번부터 30번까지 출석번호가 붙어 있다. 교수님이 내준 특별과제를 28명이 제출했는데, www.acmicpc.net 아무리 생각해도 해결이 되지 않았다. 알고보니 boolean을 사용하면 생각보다 쉽게 해결된다. import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); boolean[] arr = new boolean[31]; for(i.. 2023. 5. 17.
백준 [2675] 문자열 반복 - 자바 풀이 https://www.acmicpc.net/problem/2675 2675번: 문자열 반복 문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다 www.acmicpc.net 입력을 받으니 Scanner을 사용하고, T의 개수만큼 반복실행 해야하니 for문을 사용하면 되겠다. 실행할 케이스에는 두 가지 a, b를 따로 입력받으니 sc.nextInt() 혹은 sc.next()를 사용하면 되겠다. 근데 두 번째로 입력받은 b 문자열을 따로 분리해서 첫 번째 문자부터 a번 반복해 출력하는 것을 모든 문자열에서 반복하니 for문을 b의 문자열 길이만큼 b.length.. 2023. 5. 17.
백준 [10813] 공 바꾸기 -자바 풀이 https://www.acmicpc.net/problem/10813 10813번: 공 바꾸기 도현이는 바구니를 총 N개 가지고 있고, 각각의 바구니에는 1번부터 N번까지 번호가 매겨져 있다. 바구니에는 공이 1개씩 들어있고, 처음에는 바구니에 적혀있는 번호와 같은 번호가 적힌 공이 www.acmicpc.net N개의 수를 M번 반복하여 a,b의 수를 교환하는 문제이다. 우선 첫번째 줄에 N과 M을 입력받는다. 그리고 for문을 작성해서 배열 안에 1~N을 넣고 tmp를 사용해서 a와 b의 순서를 바꾸면 된다. if(a!=b) { arr[a] = b; arr[b] = a; } else { arr[a] = a; arr[b] = b; } 처음엔 tmp를 몰라서 이렇게 생각했으나 이러면 a=10, b=20일 때.. 2023. 5. 17.
JAVA 두 변수의 값 바꾸기 tmp int a = 10, int b = 20일 때 두 변수에 담긴 값을 서로 바꾸기 위해서는 어떻게 해야 하는가? tmp를 몰랐을 때 처음 시도했던 것은 if문이다. if (a!=b) { a = b; b = a; } 하지만, 생각해 보면 a = b; 를 실행하면 이미 a의 값은 20이 될 것이고, 그 이후에 b = a; 를 실행되니 20=20 이 실행될 것이다. 그렇다면 어떻게 두 변수의 값을 교환할 수 있을까? tmp라는 임시저장소를 사용하는 것이다. tmp = a; a = b; b = tmp; int a = 10; int b = 20; 으로 가정한다면 //a=10, b=20, tmp=null; a의 값인 10을 왼쪽에 있는 tmp에 저장해 두고, //a=10, b=20, tmp=10; b의 값인 20을 .. 2023. 5. 16.
백준 [2562] 최댓값 - 자바 https://www.acmicpc.net/problem/2562 2562번: 최댓값 9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어, 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61 이 주어 www.acmicpc.net 이전에 풀었던 N개가 주어질 때 조건을 구하는 식은 for문을 이용해 arr[]안에 주어진 N개의 수를 넣어 조건에 맞는 수를 arr[]에서 꺼내는 방법으로 해결했다. 이번에는 9개의 서로 다른 수가 주어질 때 최댓값을 찾는 문제이다. 9개의 수를 arr[] 안에 넣고, 그 중에 가장 큰 값을 출력하면 될 것 같다. 거기에 index 라는 매개변수를 만들어 for문.. 2023. 5. 14.
백준 [10871] X보다 작은 수 - 자바 https://www.acmicpc.net/problem/10871 10871번: X보다 작은 수 첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000) 둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다. www.acmicpc.net 구현 part 들어와 처음으로 도전하는 문제다. 지금까지 복습한 것은 입출력, if, for문 정도밖에 되지 않는다. 간단한 문제지만, 아직 나에겐 어렵다. 푸는 방식 첫째 줄에는 N과 X를 입력하고 둘째 줄에는 N개의 숫자를 입력한다. 그러면 둘째 줄에 입력된 수들 중 X보다 작은 수를 입력받은 순서대로 출력한다. 입력을 기다려야하니 Scanner을 사용하고, 입력된 수를 arr.. 2023. 5. 11.
반응형