반응형
안녕하세요! Plitche(플리체)입니다.
이번 포스팅의 주제는 Q1521 인삼밭(택배 수령) (자바, JAVA)입니다.
Intro
Question
문제 설명
입력
인삼밭의 크기인 K(0<K<50)가 첫 번째 줄에 입력되고,
택배가 오는데 걸리는 날짜의 수 N(0<N<10)이 두 번째 줄에 입력된다.
그 다음 세 번째 줄부터 10줄에 걸쳐 인삼밭의 정보를 입력한다.−1은 인삼이 없는 곳이고, 인삼의 숫자가 0 5이면 적당히 자란 것이며, 6이상 이면 농사에 실패한 것이다. 인삼은 하루가 지날 때 마다 1씩 자란다.
출력
햇빛 가리개가 필요한 인삼의 개수를 출력한다. 없다면 0을 출력한다.
예시
- 입력 :
5 2
1 -1 0 6 7
0 0 -1 1 3
1 1 1 3 4
0 3 2 4 -1
1 -1 -1 -1 -1 - 출력 : 11
Solution (풀이)
- 풀이 : 메모리 11236, 시간 69
public class Answer1 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine(), " ");
int length = Integer.parseInt(st.nextToken());
// 인삼받의 크기 만큼 배열 선언
int[][] field = new int[length][length];
// 택배올때까지 걸리는 시간
int time = Integer.parseInt(st.nextToken());
for (int i=0; i<length; i++) {
StringTokenizer st1 = new StringTokenizer(br.readLine(), " ");
for (int j=0; j<length; j++) {
int number = Integer.parseInt(st1.nextToken());
if (number != -1) { // 인삼이 없지 않다면 time만큼 더한 인삼의 상태를 저장
field[i][j] = number+time;
} else {
field[i][j] = number;
}
}
}
// 필요한 가림막의 개수 0으로 초기화
int count = 0;
for (int[] i : field) {
for (int j : i) {
if (j!=-1 && j<6) { // 인삼이 택배가 도착할때까지 정상적인 상태라면
count++;
}
}
}
System.out.println(count);
br.close();
}
}
Ranking(순위)
반응형
'Algorithm > CodeUp' 카테고리의 다른 글
[CodeUp_Java] Q1567 : 함수로 배열의 부분합 리턴하기 (0) | 2022.07.28 |
---|---|
[CodeUp_Java] Q1524 : 지뢰 찾기 1 (0) | 2022.07.28 |
[CodeUp_Java] Q1514 : 레이저 체스 (0) | 2022.07.28 |
[CodeUp_Java] Q1513 : 지그재그 배열 3 (0) | 2022.07.28 |
[CodeUp_Java] Q1511 : 테두리의 합 (0) | 2022.07.28 |