蓝桥杯-纸牌移动

xiaoxiao2021-02-28  100

下面代码模拟了一套扑克牌(初始排序A~K,共13张)的操作过程。

操作过程是: 手里拿着这套扑克牌,从前面拿一张放在后面,再从前面拿一张放桌子上,再从前面拿一张放在后面,…. 如此循环操作,直到剩下最后一张牌也放在桌子上。

下面代码的目的就是为了求出最后桌上的牌的顺序。

初始的排列如果是A,2,3…K,则最后桌上的顺序为: [2, 4, 6, 8, 10, Q, A, 5, 9, K, 7, 3, J]

package 二〇一七年三月二十四日; import java.util.ArrayList; import java.util.List; import java.util.Scanner; public class 纸牌移动 { public static void main(String[] args) { int n = 4, avg = 0, s = 0; List<Integer> list = new ArrayList<Integer>(); list.add(8);list.add(9);list.add(17);list.add(6); for (int i = 0; i < list.size(); i++) { avg += list.get(i); //全部相加 } avg = avg / list.size(); //得到平均数 for (int i = 0; i < list.size() - 1; i++) { s++; list.set(i + 1, list.get(i + 1) + list.get(i) - avg); } System.out.println("s:" + s); } }
转载请注明原文地址: https://www.6miu.com/read-68306.html

最新回复(0)