UVa 10935 - Throwing cards away I

模拟队列操作。  注意当n == 1时第一行输出末尾没有空格。PE一次~~~

代码  :

import java.util.*;

public class Main10935 {

	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		Queue q = new LinkedList();
		while(true) {
			int n = scan.nextInt();
			if(n == 0) break;
			for(int i=1; i<=n; i++) {
				q.offer(i);
			}
			System.out.print("Discarded cards:");
			int cnt = 0;
			while(true) {
				cnt ++;
				if(q.size() == 1) break;
				//q.poll();
				if(cnt == 1)
				    System.out.print(" " + q.poll());
				else
					System.out.print(", " + q.poll());
				
				q.offer(q.poll());
			}
			System.out.println();
			System.out.println("Remaining card: " + q.poll());
		}

	}

}


 

 

你可能感兴趣的:(UVa 10935 - Throwing cards away I)