zoukankan      html  css  js  c++  java
  • 洛谷 P3397 地毯

    P3397 地毯

    题目背景

    此题约为NOIP提高组Day2T1难度。

    题目描述

    n*n的格子上有m个地毯。

    给出这些地毯的信息,问每个点被多少个地毯覆盖。

    输入输出格式

    输入格式:

    第一行,两个正整数n、m。意义如题所述。

    接下来m行,每行两个坐标(x1,y1)(x2,y2),代表一块地毯,左上角是(x1,y1),右下角是(x2,y2)

    输出格式:

    输出n行,每行n个正整数。

    i行第j列的正整数表示(i,j)这个格子被多少个地毯覆盖。

    输入输出样例

    输入样例#1:
    5 3
    2 2 3 3
    3 3 5 5
    1 2 1 4
    输出样例#1:
    0 1 1 1 0
    0 1 1 0 0
    0 1 2 1 1
    0 0 1 1 1
    0 0 1 1 1

    说明

    样例解释

    0 0 0 0 0         0 0 0 0 0        0 1 1 1 0
    0 1 1 0 0         0 1 1 0 0        0 1 1 0 0
    0 1 1 0 0    ->   0 1 2 1 1   ->   0 1 2 1 1
    0 0 0 0 0         0 0 1 1 1        0 0 1 1 1
    0 0 0 0 0         0 0 1 1 1        0 0 1 1 1

    数据范围

    对于20%的数据,有n<=50m<=100

    对于100%的数据,有n<=1000m<=1000

    /*简单的模拟 O(n^3) 没问题*/
    #include<cstdio>
    using namespace std;
    const int MAXN=1010;
    int n,m,a[MAXN][MAXN];
    int main()
    {
        scanf("%d%d",&n,&m);
        for(int i=1;i<=m;i++)
        {
            int x,y,x2,y2;
            scanf("%d%d%d%d",&x,&y,&x2,&y2);
            for(int j=x;j<=x2;j++)
                for(int k=y;k<=y2;k++)
                    a[j][k]++;
        }
        for(int i=1;i<=n;i++)
        {
            for(int j=1;j<=n;j++)
                printf("%d ",a[i][j]);
            printf("
    ");
        }
        return 0;
    }
  • 相关阅读:
    sql性能调优的注意项
    mybatis获取刚插入数据的ID
    mysql
    JQuery
    JS
    css
    web前端
    python爬虫
    socket编程
    python基础
  • 原文地址:https://www.cnblogs.com/xiaoqi7/p/5910325.html
Copyright © 2011-2022 走看看