[2021 하계 모각코] 3회차 결과

규리(●'◡'●)·2021년 7월 22일
0

2021 하계 모각코

목록 보기
7/14

목표 - 나무조각, 달팽이는 올라가고싶다, 카드 구매하기 문제를 해결한다.

나무조각
달팽이는 올라가고싶다
카드 구매하기

결과

나무조각 문제는 버블 정렬을 통해 풀었다.
달팽이는 올라가고 싶다 문제는 해설을 참고하여 풀었다.
카드 구매하기 문제는 풀지 못하였다.

[1차 목표] 나무조각
▼소스코드

import java.util.*;
public class wood_2947 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int arr[] = new int[5];
		for (int i = 0; i < 5; i++) {
			arr[i] = sc.nextInt();
		}
		for (int i = 0; i < arr.length; i++) {
			for (int j = 0; j < arr.length-1; j++) {
				if (arr[j] > arr[j+1]) {
					int tmp = arr[j];
					arr[j] = arr[j+1];
					arr[j+1] = tmp;
					for (int k = 0; k < arr.length; k++) {
						System.out.printf("%d ", arr[k]);
					}
					System.out.println();
				}
			}
		}
	}
}

[2차 목표] 달팽이는 올라가고 싶다
▼소스코드

import java.io.*;
import java.math.*;
public class snail_2869 {
	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
		String line = br.readLine();
		int d = Integer.parseInt(line.split(" ")[0]);
		int n = Integer.parseInt(line.split(" ")[1]);
		int v = Integer.parseInt(line.split(" ")[2]);
		int day = (v - n) / (d - n);
		day = ((v - n) % (d - n) != 0) ? day+1 : day;
		bw.write(String.valueOf(day));
		bw.flush();
		bw.close();
	}
}

느낀점

나무조각 문제는 1학기 컴퓨터 프로그래밍1 수업에서 배웠던 버블 정렬을 통해 어렵지 않게 풀 수 있었다.
달팽이는 올라가고 싶다 문제는 반복문을 통해 풀었으나, 0.15초라는 제한 시간이 정해져 있었기에 해설을 참고해 Scanner대신 BufferedReader로, println대신 BufferedWriter로, 반복문 대신 수식으로 바꿔서 해결하였다.
카드 구매하기 문제는 위의 달팽이 문제에서 시간을 너무 많이 사용하기도 했고, 평소에 풀던 문제들보다 난이도가 높아 풀지 못하였다. 실력이 상승했다고 느낄 때 다시 풀어보아야겠다고 생각했다.

0개의 댓글