zoukankan      html  css  js  c++  java
  • 洗牌算法

    package demo_map;
    
    import java.util.*;
    
    public class Doudizhu_map {
        public static void main(String[] args) {
            List<String> list1=List.of("color joker","black joker");
            List<String> list01=List.of("♣","♠","♥","♦");
            List<String> list02=List.of("2","A","K","Q","J","10","9","8","7","6","5","4","3");
    
    
    
    
            HashMap<Integer,String> h1=new HashMap<>();
            int count=0;
            h1.put(count++,"color joker");
            h1.put(count++,"black joker");
            for (String numbers:list02) {
                for (String color:list01) {
                    String card=color+numbers;
                    h1.put(count++,card);
                }
    
            }
            Set<Integer> set=h1.keySet();
            List<Integer> numList=new ArrayList<Integer>();
            numList.addAll(set);
            System.out.println(numList.toString());
            Collections.shuffle(numList);
    
            //zhuangpai
    
            ArrayList<Integer> gamer1=new ArrayList<>();
            ArrayList<Integer> gamer2=new ArrayList<>();
            ArrayList<Integer> gamer3=new ArrayList<>();
            ArrayList<Integer> rest=new ArrayList<>();
    
    
            for(int key=0;key<numList.size();key++){
    
                if(key>50){
    
                    rest.add(numList.get(key));
                }else if(key%3==0){
                    gamer1.add(numList.get(key));
                }else if(key%3==1){
                    gamer2.add(numList.get(key));
                }else if (key%3==2){
                    gamer3.add(numList.get(key));
                }
            }
            Collections.sort(rest);
    
            Collections.sort(gamer1);
            System.out.println(gamer1);
            Collections.sort(gamer2);
            Collections.sort(gamer3);
    
            LinkedHashMap<Integer,String> restm=new LinkedHashMap<>();
            for (int i = 0; i <rest.size() ; i++) {
                restm.put(rest.get(i),h1.get(rest.get(i)));
            }
    
            LinkedHashMap<Integer,String> gamer1m=new LinkedHashMap<>();
            for (int i = 0; i <gamer1.size(); i++) {
                gamer1m.put(gamer1.get(i),h1.get(gamer1.get(i)));
            }
            LinkedHashMap<Integer,String> gamer2m=new LinkedHashMap<>();
            for (int i = 0; i <gamer2.size() ; i++) {
                gamer2m.put(gamer2.get(i),h1.get(gamer2.get(i)));
            }
            LinkedHashMap<Integer,String> gamer3m=new LinkedHashMap<>();
            for (int i = 0; i <gamer3.size() ; i++) {
                gamer3m.put(gamer3.get(i),h1.get(gamer3.get(i)));
            }
            System.out.println(restm.toString());
            System.out.println(gamer1m.toString());
            System.out.println(gamer2m.toString());
            System.out.println(gamer3m.toString());
            //排序
    
    
    
    
        }
    }
  • 相关阅读:
    Educational Codeforces Round 74 (Rated for Div. 2)
    Codeforces Round #591 (Div. 2, based on Technocup 2020 Elimination Round 1) 题解
    D
    Card Hand Sorting 二进制枚举暴力
    20172018-acmicpc-southeastern-european-regional-programming-contest-seerc-2017-en A
    Round #590 (Div. 3)
    A
    P2634 [国家集训队]聪聪可可
    HDU-4807-Lunch Time(二分+费用流,思维)
    易错分析
  • 原文地址:https://www.cnblogs.com/resort-033/p/13082457.html
Copyright © 2011-2022 走看看