Development Palette
[D3]n1208_flatten 본문
덤프를 하고 제일 마지막에 최대 최소 값을 구해주는 걸 잊고,,,
최대최소값을 먼저 구한다음 덤프를 한 값에서 최대 최소를 빼서 6번케이스에서만 틀렸었다
항상 순서가 중요!! 문제를 잘 읽어보고 흐름을 파악하자!
max min을 구하는 메소드로 실행하니 수행속도가 더 빨라졌고 코드가 더 깔끔해졌다
package w0803.com.ssafy.n1208_flatten;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.StringTokenizer;
public class Solution {
public static int max(int box []) {
int max = -999;
int indexMax= -1;
for (int x = 0; x < box.length; x++) {
int tmpX = box[x];
if(max<tmpX) {
max = tmpX;
indexMax = x;
}
if(max==100) break;
}
return indexMax;
}
public static int min(int box []) {
int min = 999;
int indexMin= -1;
for (int x = 0; x < box.length; x++) {
int tmpN = box[x];
if(min>tmpN) {
min = tmpN;
indexMin = x;
}
if(min==1) break;
}
return indexMin;
}
public static void main(String[] args) throws NumberFormatException, IOException {
System.setIn(new FileInputStream("C:\\SSAFY_c_drive\\workspace\\03_algowork\\DailyProject\\src\\w0803\\com\\ssafy\\n1208_flatten\\input.txt"));
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
final int T = 10;
final int BOXCOUNT = 100;
for (int t = 0; t < T; t++) {
int dump_c = Integer.parseInt(br.readLine()); // 덤프 횟수 1~1000
int box[] = new int[BOXCOUNT]; // 높이 1~100(행) //index : 가로로 몇번째 위치인지-가로길이 항상 100(열)
StringTokenizer st = new StringTokenizer(br.readLine(), " ");
for (int i = 0; i < BOXCOUNT; i++) { // 가로 박스
box[i] = Integer.parseInt(st.nextToken());
}
//덤프시작
for (int dump = 0; dump < dump_c; dump++) {
//최대, 최소값 찾아서 덤프
box[max(box)]--;
box[min(box)]++;
}
//마지막에 최대 최소 다시구해서 최종값 출력
bw.append("#"+(t+1)+" "+(box[max(box)]-box[min(box)])+"\n");
}
bw.flush();
bw.close();
}
}
'Algorithm > SWEA' 카테고리의 다른 글
[D3] 원재의 메모리 복구하기 (0) | 2021.08.04 |
---|---|
[D4] n1210 Ladder1 (0) | 2021.08.04 |
[D2]n2001_파리퇴치 (0) | 2021.08.04 |
[D3]n2805 농작물 수확하기 (0) | 2021.08.04 |
[D2]n1954_달팽이숫자 (0) | 2021.08.04 |
Comments