HDOJ(HDU) 2192 MagicBuilding(用Java的Map做了下)
2016-05-05 21:07
483 查看
Problem Description
As the increase of population, the living space for people is becoming smaller and smaller. In MagicStar the problem is much worse. Dr. Mathematica is trying to save land by clustering buildings and then we call the set of buildings MagicBuilding. Now we can treat the buildings as a square of size d, and the height doesn’t matter. Buildings of d1,d2,d3….dn can be clustered into one MagicBuilding if they satisfy di != dj(i != j).
Given a series of buildings size , you need to calculate the minimal numbers of MagicBuildings that can be made. Note that one building can also be considered as a MagicBuilding.
Suppose there are five buildings : 1, 2, 2, 3, 3. We make three MagicBuildings (1,3), (2,3), (2) .And we can also make two MagicBuilding :(1,2,3), (2,3). There is at least two MagicBuildings obviously.
Input
The first line of the input is a single number t, indicating the number of test cases.
Each test case starts by n (1≤n≤10^4) in a line indicating the number of buildings. Next n positive numbers (less than 2^31) will be the size of the buildings.
Output
For each test case , output a number perline, meaning the minimal number of the MagicBuilding that can be made.
Sample Input
2
1
2
5
1 2 2 3 3
Sample Output
1
2
其实说了这么多,就是找出现次数最多的那个数。
练习了下Map的使用。也可以不用Map的。
As the increase of population, the living space for people is becoming smaller and smaller. In MagicStar the problem is much worse. Dr. Mathematica is trying to save land by clustering buildings and then we call the set of buildings MagicBuilding. Now we can treat the buildings as a square of size d, and the height doesn’t matter. Buildings of d1,d2,d3….dn can be clustered into one MagicBuilding if they satisfy di != dj(i != j).
Given a series of buildings size , you need to calculate the minimal numbers of MagicBuildings that can be made. Note that one building can also be considered as a MagicBuilding.
Suppose there are five buildings : 1, 2, 2, 3, 3. We make three MagicBuildings (1,3), (2,3), (2) .And we can also make two MagicBuilding :(1,2,3), (2,3). There is at least two MagicBuildings obviously.
Input
The first line of the input is a single number t, indicating the number of test cases.
Each test case starts by n (1≤n≤10^4) in a line indicating the number of buildings. Next n positive numbers (less than 2^31) will be the size of the buildings.
Output
For each test case , output a number perline, meaning the minimal number of the MagicBuilding that can be made.
Sample Input
2
1
2
5
1 2 2 3 3
Sample Output
1
2
其实说了这么多,就是找出现次数最多的那个数。
练习了下Map的使用。也可以不用Map的。
import java.util.Map; import java.util.Scanner; import java.util.TreeMap; public class Main{ public static void main(String[] args) { Scanner sc =new Scanner(System.in); int t =sc.nextInt(); while(t-->0){ Map<Integer,Integer> map = new TreeMap<Integer, Integer>(); int n=sc.nextInt(); int m[] = new int ; for(int i=0;i<n;i++){ m[i] = sc.nextInt(); if(map.get(m[i])==null){ map.put(m[i], 1); }else{ map.put(m[i], map.get(m[i])+1); } } int max=0; for(int i=0;i<n;i++){ if(map.get(m[i])>max){ max=map.get(m[i]); } } System.out.println(max); } } }
相关文章推荐
- leetcode_095 Unique Binary Search Trees II
- Android基础 | UI检视利器:Hierarchy Viewer
- String、StringBuffer与StringBuilder之间区别
- “java.sql.SQLException: Value '0000-00-00' can not be represented as java.sql.Timestamp”
- tableviewcell自适应高度当中遇到添加label作为contentView,在实际显示时右侧出现空白
- njust 1925 sequence 拆分序列,寻找非降序列的最小个数,不变序列顺序。
- HDU 3836 Equivalent Sets
- HDU 2767 Proving Equivalences 增加最小边使图为强连通
- UIScrollView实现滑动图片
- requests 模拟登录百度
- easyUI获取当前行--代码
- UIScrollView实现缩放
- UIScrollView(滑动视图)
- -[UICachedDeviceRGBColor CGImage]: unrecognized selector sent to instance 0x130972b90
- UILabel 实现国际象棋棋盘界面
- APUE笔记:alarm和pause竞争
- UILabel 标签
- UILabel 实现计算器界面
- 导航栏上面添加UISearchBar pop回去的时候会把添加的导航栏带回去的问题
- Leetcode - Longest Increasing Subsequence