๐ ๋ฌธ์ ์ถ์ฒ
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV14uWl6AF0CFAYD
SW Expert Academy
SW ํ๋ก๊ทธ๋๋ฐ ์ญ๋ ๊ฐํ์ ๋์์ด ๋๋ ๋ค์ํ ํ์ต ์ปจํ ์ธ ๋ฅผ ํ์ธํ์ธ์!
swexpertacademy.com
๐ ๋ฌธ์ ๋ถ์
1. ์ํธ ๋ฐฐ์ด์ ์ ๋งํผ ์ฌ์ดํด์ ๋๋ ๊ฒ์ด ์๋๋ผ 5๋ฒ ๊ฐ์๊ฐ 1์ฌ์ดํด์ด๋ค.
2. ๋ง์ง๋ง์ด 0์ด ๋๋ ๊ฒฝ์ฐ ๋ฉ์ถ๊ณ , ์ํธ ๋์ถ
๐ ์ฝ๋ ๋ณด๊ธฐ (๋๋ณด๊ธฐ ๐๐ป)
๋๋ณด๊ธฐ
๋๋ณด๊ธฐ
public class Solution {
private static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
private static StringTokenizer st;
private static StringBuilder answer = new StringBuilder();
private static int T;
private static Queue<Integer> numbers = new LinkedList<>();
public static void main(String[] args) throws IOException {
while(true) {
String s = br.readLine();
if(s == null){ // ์ฝ์ ๋ด์ฉ์ด null ์ด๋ฉด ๋ฐ๋ณต๋ฌธ ์ข
๋ฃ
break;
}
T = Integer.parseInt(s);
st = new StringTokenizer(br.readLine());
numbers = new LinkedList<>();
for(int i = 0; i<8; i++) {
numbers.offer(Integer.parseInt(st.nextToken()));
} // ์
๋ ฅ ์๋ฃ
while(!numbers.contains(0)) { // ํ์ 0์ด ์์ผ๋ฉด ๋ฐ๋ณต.
int temp = 0;
for(int i = 1; i<=5; i++) { // ํ ์ฌ์ดํด์ 1 ~ 5 ๊ฐ์.
temp = numbers.poll() - i; // ์ฒซ ๋ฒ์งธ ๊ฐ์ ๋นผ์ i ๊ฐ์
if(temp <= 0) { // ์ฌ์ดํด ๋์ค temp๊ฐ 0์ธ ๊ฒฝ์ฐ
temp = 0;
numbers.offer(temp);
break; // ์ธ์ดํด์ ๋ฉ์ถ๋ค.
}
numbers.offer(temp); // numbers ์ temp๋ฅผ ๋ฃ๋๋ค.
}
}
answer.append("#"+T+" ");
while(!numbers.isEmpty()) {
answer.append(numbers.poll()+" ");
}
answer.append("\n");
} //while ๋ฐ๋ณต๋ฌธ
System.out.println(answer);
}
}
๐ ์ฝ๋ ํ์ด
1. br.ready() ํจ์๋ฅผ ์๊ธฐ ์ ์ด๋ผ์ while ๋ฌธ์ true๋ก ๋๋ฆฌ๊ณ , ์ฝ์ ๋ด์ฉ์ด null ์ธ ๊ฒฝ์ฐ ์ข ๋ฃ๋ฅผ ํด์ฃผ๋ if๋ฌธ์ ์ถ๊ฐ๋ก ์์ฑํ๋ค.
2. numbers ํ์ 0์ด ๋์ค๋ ๊ฒฝ์ฐ ๋ฐ๋ณต๋ฌธ์ ์ข ๋ฃํ๋ค.
'Algorithm > SWEA' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[SWEA] 7236๋ฒ: ์ ์์ง์ ๋ฌผ์ ์ด ๊น์ด ๊ตฌํ๊ธฐ(Java) (0) | 2022.02.28 |
---|---|
[SWEA] 1228๋ฒ: ์ํธ๋ฌธ1 (Java) / LinkedList (0) | 2022.02.08 |
๋๊ธ