0926-----homework(2)

 1 /**
 2   *homework0926
 3   *@author:kai li
 4   */
 5 package com.kai.li.homework0926;
 6 import java.util.List;
 7 import java.util.ArrayList;
 8 import java.util.Arrays;
 9 import java.util.HashMap;
10 import java.util.Map;
11 import java.util.Scanner;
12 import java.util.Random;
13 /**
14   *following class is client
15   */
16 public class HomeWork0926{
17     public static void main(String[] args)throws Exception{
18
19         /**
20           *question one
21           */
22
23         /*create data source*/
24
25         List<String> keyList=Arrays.asList("1930","1934","1938","1950","1954","1958","1962","1966","1970","1974","1978","1982","1986","1990","1994","1998","2002","2006","2010","2014");
26         List<String> valueList=Arrays.asList("乌拉圭","意大利","意大利","乌拉圭","西德","巴西","巴西","英格兰","巴西","西德","阿根廷","意大利","阿根廷","西德","巴西","法国","巴西","意大利","西班牙","德国");
27         Map<String,String> footballMap=new HashMap<>();
28         for(int i=0;i<keyList.size();i++){
29             footballMap.put(keyList.get(i),valueList.get(i));
30         }
31
32         /*query with years*/
33
34         System.out.print("请输入年份:");
35         Scanner scanner=new Scanner(System.in);
36         String strKey=scanner.nextLine();
37         if(!footballMap.containsKey(strKey))
38             System.out.println("没有举办世界杯");
39         else
40             System.out.println("世界杯冠军是: "+footballMap.get(strKey));
41
42         /*query with countrys */
43
44         System.out.print("请输入国家名称:");
45         String strValue=scanner.nextLine();
46         if(!footballMap.containsValue(strValue))
47             System.out.println(strValue+"没有得过世界杯的冠军");
48         else{
49             System.out.println(strValue+"得冠军年份是:");
50             footballMap.keySet().stream().filter(i->strValue.equals(footballMap.get(i))).sorted().forEach(System.out::println);    //filter the data then sorted then println
51         }
52
53          /**
54           *question two
55           */
56
57         /*create data source*/
58
59         List<String> footballTeam=Arrays.asList("科特迪瓦队","阿根廷队","澳大利亚队","塞尔维亚队","荷兰队","尼日利亚队","日本队","美国队","中国队","新西兰队","巴西队","比利时队","韩国队","喀麦隆队","洪都拉斯队","意大利队");
60         List<ArrayList<String>> footballTeams=new ArrayList<ArrayList<String>>();
61     footballTeams=Arrays.asList(new ArrayList<String>(),new ArrayList<String>(),new ArrayList<String>(),new ArrayList<String>());
62
63         /*create array of diffrent random number*/
64
65         int[] randomArray=new int[16];
66         Random random=new Random();
67         for(int i=0;i<randomArray.length;i++){
68             int r;
69             r=random.nextInt(16);
70             randomArray[i]=r;
71             for(int j=0;j<i;j++){
72                     if(r==randomArray[j]){
73                         i--;
74                         break;
75                     }
76                }
77         }
78
79         /*grouping*/
80
81         for(int i=0;i<4;i++){
82             for(int j=i*4;j<(i+1)*4;j++){
83                     footballTeams.get(i).add(footballTeam.get(randomArray[j]));
84                }
85         }
86         System.out.println(footballTeams);
87     }
88 }
时间: 2024-10-14 00:57:30

0926-----homework(2)的相关文章

hdu 5298 Solid Geometry Homework(几何)

题目链接:hdu 5298 Solid Geometry Homework 每个圈或者是平面将划分出两个区域,每次把一边区域取反即可.最后判断一下是否满足. #include <cstdio> #include <cstring> #include <vector> #include <algorithm> using namespace std; const int maxn = 3000; typedef long long ll; struct Poi

Doing Homework(hdu)1074

Doing Homework Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 6967    Accepted Submission(s): 3043 Problem Description Ignatius has just come back school from the 30th ACM/ICPC. Now he has a lo

C 语言 homework(2)

<C语言程序设计>实验报告 学 号 160809215 姓 名 韩笑 专业.班 计科16-2班 学 期 2016-2017 第1学期 指导教师 黄俊莲 吴喆 实验地点 C区二层机房 机 器 号 上课时间 2016年 9 月 22 日 2 周 周四 1-4 节 截止时间 2016年 9 月 28 日 3 周 周三 12:00 实验任务清单 1. 实验2-1 输入3个数,并按由大到小的顺序输出. 2. 实验2-2 从键盘上输入x的值,并根据计算输出y的值 3. 实验2-3从键盘上输入一个字母,如果

HDU1789Doing Homework again(贪婪)

HDU1789Doing Homework again(贪心) 题目链接 题目大意:给你n们作业的最后期限和过了这个期限没做须要扣的分数.问如何安排能够使得扣分最少. 解题思路:贪心,将扣分多的作业排在前面,扣分同样的依照最后期限前的排前面,然后用一个数组来表示第i天是否有安排.每次都将第i个作业放到它的最后期限的那天完毕,但假设这一天被占了,那么就仅仅能往前移动,找空暇的天.假设一直找到了0.那么说明这个作业是无法按时完毕了,就加上分数.假设某项作业完毕的最后期限比n还大,那么这个作业一定是能

hdu1789Doing Homework again(贪心)

题目链接: 啊哈哈,点我点我 思路: 这道题是简单的贪心..先按分数从大到小排序,然后将这个分数的截止日期从后向前扫描,如果碰到没有被标记的则这一天可以做这个作业... 题目: Doing Homework again Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 6451    Accepted Submission(s): 383

机器学习 —— 概率图模型(Homework: Exact Inference)

在前三周的作业中,我构造了概率图模型并调用第三方的求解器对器进行了求解,最终获得了每个随机变量的分布(有向图),最大后验分布(双向图).本周作业的主要内容就是自行编写概率图模型的求解器.实际上,从根本上来说求解器并不是必要的.其作用只是求取边缘分布或者MAP,在得到联合CPD后,寻找联合CPD的最大值即可获得MAP,对每个变量进行边缘分布求取即可获得边缘分布.但是,这种简单粗暴的方法效率极其低下,对于MAP求取而言,每次得到新的evidance时都要重新搜索CPD,对于单个变量分布而言,更是对每

HDU 1074 Doing Homework (状压dp)

题意:给你N(<=15)个作业,每个作业有最晚提交时间与需要做的时间,每次只能做一个作业,每个作业超出最晚提交时间一天扣一分 求出扣的最小分数,并输出做作业的顺序.如果有多个最小分数一样的话,则按照作业字典序输出(注意:输入也是按照字典序输入的) 题解:首先想到的是暴力dfs,但是会超时.接着我们看到n最大只有15,因此可以使用状压dp,但是状态不能用位置表示 但我们可以这样:0表示此作业没有做过,1表示已经用过了,接着遍历0->(1<<n)-1贪心(例如:3(011)可以找2(0

hdu 4974 A simple water problem(数学题)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4974 Problem Description Dragon is watching competitions on TV. Every competition is held between two competitors, and surely Dragon's favorite. After each competition he will give a score of either 0 or

一场CF的台前幕后(上)——转

前奏 大约4月份的时候,业界毒瘤pyx噔噔噔跑过来说:“酷爱!我YY了一道题!准备当CF的C” 我当时就被吓傻了."Yet another Chinese round?" “区间取模,区间求和” 感觉这题还不错?不过pyx嫌水了…… 好办!当时我刚刚出完动态仙人掌不久,于是一拍脑袋说:把这个问题出到仙人掌上去! 当然被pyx鄙视了…… 后来一直就没啥动静,直到5月底的CTSC. 试机的时候pyx给我看了套他出的神题……里面有一道题……我不小心读成了下面这个样子: “给定n个m维的模2意

【Linux学习】Makefile学习(二)

FatMouse' Trade Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 40975    Accepted Submission(s): 13563 Problem Description FatMouse prepared M pounds of cat food, ready to trade with the cats g