반응형
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws Exception {
int N,k = 0;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String nk=br.readLine();
N = Integer.parseInt(nk.split(" ")[0]);
k = Integer.parseInt(nk.split(" ")[1]);
StringBuilder sb = new StringBuilder();
List<Integer> list=new ArrayList<Integer>();
for(int i=1;i<=N;i++){
list.add(i);
}
sb.append("<");
int index=k-1;
while(list.size()>1){
sb.append(list.get(index)+", ");
list.remove(index);
index=index+k-1;
if(index>=list.size()){
index=index%list.size();
}
}
sb.append(list.get(0)+">");
System.out.print(sb);
}
}
리스트와 %(Mod)를 이용하여 문제를 풀었습니다.
원이기 때문에 찾고 싶은 번호가 list size 보다 커지면 %를 사용하여 찾았습니다.
반응형
'프로그래밍 > 알고리즘 풀이' 카테고리의 다른 글
[알고리즘] 백준 10950번 A+B - 3 Java (0) | 2021.04.15 |
---|---|
[알고리즘] 백준 2438번 별 찍기 -1 Java (0) | 2021.04.15 |
[알고리즘] 백준 1874번: 스택 수열 JAVA (0) | 2021.04.12 |
[알고리즘] 백준 9012번: 괄호 JAVA (0) | 2021.04.06 |
[알고리즘] 백준 10816번: 숫자 카드2 JAVA (0) | 2021.04.03 |
댓글