编程介的小学生 2017-08-26 12:51 采纳率: 20.5%
浏览 787
已采纳

Islands

You are working in a team developing the new strategic game Island Warriors. The game proceeds on a hexagonal grid, the coordinate system on the map is introduced as shown on the picture below.

A hexagon can be either land, or sea. An island is a maximal connected set of land hexagons, an area of the island is the number of hexagons in it.

Your current task is writing random map generator. The map generated must satisfy some conditions, in particular no island area must exceed s.

The design of your module is the following. Initially all hexagons are sea. Special random generator provides you with the sequence of hexagons. Getting the next hexagon, you check whether it is already the land one. If it is, you just skip this hexagon. If it is sea, you check whether convering it to land results in an island with area exceeding s. If it does, you also skip this hexagon. In the other case you convert it to land.

So, the design step is completed, now its time to implement the module. Fortunately, your teammate has already implemented random generator, so you just have to implement the rest of the module. To check yourself you decided first to output only the number of islands in the resulting map and their areas.

Input

The first line of the input file contains n --- the number of hexagons provided to you by random generator (1 ≤ n ≤ 50000), and s (1 ≤ s ≤ n).

The following n lines contain two integer numbers each --- coordinates of the hexagons. Coordinates do not exceed 500 by their absolute values.

There are multiple cases. Process to the end of file.

Output

Output the number of islands in the resulting map and their areas. List areas in the ascending order.

Sample Input

7 4
0 1
2 1
3 0
1 -1
2 1
1 0
0 0
Sample Output

2
2 3

  • 写回答

1条回答 默认 最新

  • threenewbee 2017-09-10 00:44
    关注
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
  • ¥500 火焰左右视图、视差(基于双目相机)
  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统