现在的位置: 首页 > 综合 > 正文

POJ1083

2014年10月16日 ⁄ 综合 ⁄ 共 1669字 ⁄ 字号 评论关闭
  1. import java.io.BufferedReader;
  2. import java.io.IOException;
  3. import java.io.InputStreamReader;
  4. import java.util.Arrays;
  5. public class Main {
  6.     public static void main(String[] args) throws NumberFormatException,
  7.             IOException {
  8.         BufferedReader read = new BufferedReader(new InputStreamReader(
  9.                 System.in));
  10.         int t = Integer.parseInt(read.readLine());
  11.         int s;
  12.         int[][] m;
  13.         String[] str;
  14.         int[] rooms = new int[200];
  15.         int len;
  16.         int start;
  17.         int max;
  18.         for (int i = 0; i < t; i++) {
  19.             Arrays.fill(rooms, 0);
  20.             s = Integer.parseInt(read.readLine());
  21.             m = new int[s][2];
  22.             for (int j = 0; j < s; j++) {
  23.                 str = read.readLine().split(" ");
  24.                 m[j][0] = Integer.parseInt(str[0]);
  25.                 m[j][1] = Integer.parseInt(str[1]);
  26.             }
  27.             for (int j = 0; j < s; j++) {
  28.                 if (m[j][0] % 2 == 1) {
  29.                     m[j][0] = m[j][0] + 1;
  30.                 }
  31.                 if (m[j][1] % 2 == 1) {
  32.                     m[j][1] = m[j][1] + 1;
  33.                 }
  34.                 len = Math.abs(m[j][0] - m[j][1]) / 2 + 1;
  35.                 start = Math.min(m[j][0], m[j][1]) / 2 - 1;
  36.                 for (int k = 0; k < len; k++) {
  37.                     rooms[start + k]++;
  38.                 }
  39.             }
  40.             max = rooms[0];
  41.             for (int j = 1; j < 200; j++) {
  42.                 if (rooms[j] > max) {
  43.                     max = rooms[j];
  44.                 }
  45.             }
  46.             System.out.println(max * 10);
  47.         }
  48.     }
  49. }

 题目:http://acm.pku.edu.cn/JudgeOnline/problem?id=1083

 思路:建一个200长的int数组,存放这个点使用的次数,最后的结果就是最大的次*10

 

 

【上篇】
【下篇】

抱歉!评论已关闭.