zoukankan      html  css  js  c++  java
  • BZOJ 3359: [Usaco2004 Jan]矩形( dp )

    数据范围这么小..怎么乱搞都可以吧...

    先排序一遍然后O(n²) dp

     ------------------------------------------------------------------

    #include<bits/stdc++.h>
     
    using namespace std;
     
    const int maxn = 109;
     
    struct R {
    int x, y;
    inline void Read() {
    scanf("%d%d", &x, &y);
    if(x < y) swap(x, y);
    }
    bool operator < (const R &o) const {
    return x > o.x || x == o.x && y > o.y;
    }
    } A[maxn];
     
    int dp[maxn];
     
    bool ok(int a, int b) {
    return A[a].x > A[b].x && A[a].y >= A[b].y || A[a].x >= A[b].x && A[a].y > A[b].y;
    }
     
    int main() {
    int N;
    cin >> N;
    for(int i = 0; i < N; i++) A[i].Read();
    sort(A, A + N);
    for(int i = 0; i < N; i++) {
    dp[i] = 1;
    for(int j = 0; j < i; j++)
       if(ok(j, i))
           dp[i] = max(dp[i], dp[j] + 1);
    }
    cout << *max_element(dp, dp + N) << " ";
    return 0;
    }

    -------------------------------------------------------------------

    3359: [Usaco2004 Jan]矩形

    Time Limit: 10 Sec  Memory Limit: 128 MB
    Submit: 11  Solved: 7
    [Submit][Status][Discuss]

    Description

        给出N个矩形(1≤N≤100)和它的长和宽(不超过1000),写一个程序找出最大的K,使得
    有K个矩形满足层层包含的关系,即里层的矩形被所有外层的矩形包含.一个矩形P1包含另一个
    矩形P2,则P2的一边小于P1的一边,并且P9的另一边不超过P1的另一边.如果两个矩形相同,视为不包含.如2 x 1的矩形被2x2的矩形包含,不被1 x 2的矩形包含.
        注意:矩形的顺序可以是任意的,且矩形可以旋转.

    Input

        第1行:整数N.
        第2到N+1行:矩形的长和宽,均为整数.

    Output

        一行,输出最大的包含数K.

    Sample Input

    4
    8 14
    16 28
    29 12
    14 8

    Sample Output

    2

    HINT

    Source

  • 相关阅读:
    Count and Say leetcode
    Find Minimum in Rotated Sorted Array II leetcode
    Find Minimum in Rotated Sorted Array leetcode
    Search in Rotated Sorted Array II leetcode
    search in rotated sorted array leetcode
    Substring with Concatenation of All Words
    Subsets 子集系列问题 leetcode
    Sudoku Solver Backtracking
    Valid Sudoku leetcode
    《如何求解问题》-现代启发式方法
  • 原文地址:https://www.cnblogs.com/JSZX11556/p/4717692.html
Copyright © 2011-2022 走看看