페이지링크
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWGsRbk6AQIDFAVW
<풀이>
- 반 잘라서 그 반절의 뭉탱이끼리 섞기
- LinkedList의 add는 index와 value 둘 다 사용해서 넣는 방법이 있으므로
- 입력받을 때 반절 넣어놓고 나머지 반절을 사이사이에 넣어주었다.
- Math.ceil(값) : 값을 올림(double형)
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.LinkedList;
import java.util.StringTokenizer;
public class Solution_3499 {
public static void main(String[] args) throws NumberFormatException, IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder("");
int T = Integer.parseInt(br.readLine());
for(int testCase = 1;testCase <=T;testCase++) {
LinkedList<String> list = new LinkedList<>();
int N = Integer.parseInt(br.readLine());
//String []card = br.readLine().split(" ");
StringTokenizer st = new StringTokenizer(br.readLine());
int half = (int)Math.ceil(N/2.0);
for(int i=0;i<half;i++) {
list.add(st.nextToken());
}
for(int i= 1;i<N;i+=2) {
list.add(i,st.nextToken());
}
sb.append("#").append(testCase).append(" ");
for(int i=0;i<N;i++) {
sb.append(list.get(i)).append(" ");
}
sb.append("\n");
}
System.out.println(sb.toString());
}
}
https://github.com/LeeJieuni/Algorithm/blob/main/SWEA/Solution_3499_%EC%9D%B4%EC%A7%80%EC%9D%80.java
'공부 > 알고리즘' 카테고리의 다른 글
[백준]16926_배열돌리기1_Java 풀이 (0) | 2022.02.09 |
---|---|
[백준]2309_일곱난쟁이_Java 풀이 (0) | 2022.02.09 |
[백준]1260_DFS와 BFS_JAVA 풀이 (0) | 2022.02.08 |
[SWEA]9229_한빈이와 Spot Mart JAVA 풀이 (0) | 2022.02.08 |
[SWEA]1228_암호문1 JAVA 풀이 (0) | 2022.02.08 |
댓글