7-5 小明的第一个扑克牌“魔术”(队列或链表 *** 作) (10 分)java版

7-5 小明的第一个扑克牌“魔术”(队列或链表 *** 作) (10 分)java版,第1张

7-5 小明的第一个扑克牌“魔术”(队列或链表 *** 作) (10 分)java版

小明刚上小学,学会了第一个扑克牌“魔术”,到处给人表演。魔术的内容是这样的:

他手里握着一叠扑克牌:A,2,…J,Q,K 一共13张。他先自己精心设计它们的顺序,然后正面朝下拿着,开始表演。只见他先从最下面拿一张放到最上面,再从最下面拿一张翻开放桌子上,是A;然后再从最下面拿一张放到最上面,再从最下面拿一张翻开放桌子上,是2;…如此循环直到手中只有一张牌,翻开放桌子上,刚好是K。这时,桌上牌的顺序是:A,2,3,4,5,6,7,8,9,10,J,Q,K请你计算一下,小明最开始的时候手里牌的顺序是怎样的。把结果写出来,逗号分割,小明“魔术”开始时,最下面的那张牌输出为第一个数据。

输入格式:
输入这叠扑克的数量。

输出格式:
对每一组输入,在一行中输出牌的初始顺序(最下面的那张牌输出为第一个数据,数字1表示A,数字11表示J,数字12表示Q,数字13表示K)。

输入样例:
在这里给出一组输入。例如:

3

输出样例:
在这里给出相应的输出。例如:

2,1,3
import java.util.*;
public class Main{
    
    public static void main(String args[]) {
        Scanner sc=new Scanner(System.in);
        int n=sc.nextInt();
        int a[]=new int [n];
        for(int i=0;i b=new ArrayList();
        b.add(n);
        for(int i=n-2;i>=0;i--) {
        	b.add(0,a[i]);
        	int tmp=b.get(b.size()-1);
        	b.remove(b.size()-1);
        	b.add(0,tmp);
        }
        for (int i = 0; i < b.size(); i++) {
			if (i==b.size()-1) {
				System.out.print(b.get(i));
				break;
			}
			System.out.print(b.get(i)+",");
		}
    }
}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5590741.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-14

发表评论

登录后才能评论

评论列表(0条)

保存