-
[백준-11866] 요세푸스 문제0 - Java공부/백준 2022. 6. 14. 16:54728x90
https://www.acmicpc.net/problem/11866
백준 11866번 요세푸스 문제 0 자바 풀이
난이도: 실버 5
boolean으로 배열을 만들어 삭제 했는지 여부를 확인하였다.
0번째 배열이 N이라고 생각하며 N을 제외한 숫자를 해당 배열에 배치하였다.
만약 숫자가 N보다 커질 경우 나머지를 구하여 다시 숫자 안으로 들어오게 하였다.
while문을 사용하여 삭제하지 않은 숫자를 지나간 횟수를 세었다.
코드
import java.util.*;public class back11866 {public static void main(String args[]){Scanner scanner = new Scanner(System.in);int num=scanner.nextInt();int num2=scanner.nextInt();boolean arr[]=new boolean[num];int temp=0;System.out.print("<");for(int i=0;i<num;i++){int count=0;while(count<num2){temp++;if(temp>=num){temp%=num;}if(arr[temp]==false){count++;}}arr[temp]=true;if(temp==0){temp=num;}if(i==num-1){System.out.print(temp+">");}else{System.out.print(temp+", ");}}}}728x90반응형'공부 > 백준' 카테고리의 다른 글
[백준-1966] 프린터 큐 - Java (0) 2022.06.16 [백준-4949] 균형잡힌 세상 - Java (0) 2022.06.15 [백준-2004] 조합 0의 개수 - Java (0) 2022.06.13 [백준-25285] 심준의 병역판정검사 - Java (0) 2022.06.12 [백준-1676] 팩토리얼 0의 개수 - Java (0) 2022.06.10