POJ 1083 Moving Tables 水题

400个房间分布在一条走廊的两侧,每侧各200个。1的对面是2,3的对面是4,…,399的对面是400。

然后就是挪动桌子占用走廊,n次挪动,最少时间。
把桌子从l挪动到r(l

#include 
#include 
#include 
#include 
#include 
using namespace std;
int cnt[205];
int main()
{
    //freopen("input.txt", "r", stdin);
    int T;
    scanf("%d", &T);
    while (T--)
    {
        memset(cnt, 0, sizeof(cnt));
        int N;
        scanf("%d", &N);
        int l, r;
        while (N--)
        {
            scanf("%d%d", &l, &r);
            if (r < l)
            {
                int temp = l;
                l = r;
                r = temp;
            }
            l = (l + 1) / 2;
            r = (r + 1) / 2;
            for (int i = l; i <= r; ++i)
            {
                cnt[i]++;
            }
        }
        int ans = 0;
        for (int i = 1; i <= 200; i++)
        {
            if (cnt[i] > ans)
                ans = cnt[i];
        }
        printf("%d\n", ans * 10);
    }
    //printf("end\n");
    //while (1);
    return 0;
}

你可能感兴趣的:(水题,POJ)