• 1628. White Streaks(STL)


    1628

    题意不太好理解 求横黑条 和竖黑条共有多少个 注意1*1的情况 如果横向纵向都是1*1 算为一个 否则不算 

    用了下vector  枚举找下

     1 #include <iostream>
     2 #include<cstdio>
     3 #include<cstring>
     4 #include<algorithm>
     5 #include<stdlib.h>
     6 #include<vector>
     7 using namespace std;
     8 #define N 30010
     9 vector<int>p[N];
    10 vector<int>q[N];
    11 int o1[N],o2[N];
    12 int main()
    13 {
    14     int i,j,m,n,k,x,y,t,sum=0;
    15     scanf("%d%d%d",&m,&n,&k);
    16     for(i = 1; i <= k ;i++)
    17     {
    18         scanf("%d%d",&x,&y);
    19         p[x].push_back(y);
    20         q[y].push_back(x);
    21     }
    22     for(i = 1; i <= m ; i++)
    23     p[i].push_back(n+1);
    24     for(i = 1; i <= n ; i++)
    25     q[i].push_back(m+1);
    26     for(i = 1; i <= m ; i++)
    27     {
    28         t = 0;
    29         sort(p[i].begin(),p[i].end());
    30         for(j = 0; j < (int)p[i].size() ; j++)
    31         {
    32             if(p[i][j]-t>2)
    33                 sum+=1;
    34             t = p[i][j];
    35         }
    36     }
    37     for(i = 1; i <= n ; i++)
    38     {
    39         sort(q[i].begin(),q[i].end());
    40         t = 0;
    41         for(j = 0 ; j < (int)q[i].size() ; j++)
    42         {
    43             if(q[i][j]-t>2)
    44                 sum+=1;
    45             else if(q[i][j]-t>1)
    46             {
    47                 int ot = q[i][j]-1;
    48                 t = 0;
    49                 for(int g = 0 ; g < (int)p[ot].size() ; g++)
    50                 {
    51                     if(p[ot][g]>i)
    52                     {
    53                         if(p[ot][g]-t<=2)
    54                         sum+=1;
    55                         break;
    56                     }
    57                     t = p[ot][g];
    58                 }
    59             }
    60             t = q[i][j];
    61         }
    62     }
    63     printf("%d
    ",sum);
    64     return 0;
    65 }
    View Code
  • 相关阅读:
    Matlab smooth函数原理
    Pandas中的高级索引loc、iloc、ix精简概括
    QT常见错误:"multiple definition of xxx"
    Github术语解释
    数据反转 LSB
    LSB最低有效位和MSB最高有效位
    Modbus通信CRC16校验程序
    CRC16常见几个标准的算法及C语言实现
    DB9 公头母头引脚定义及连接
    hdu 2577 How to Type(dp)
  • 原文地址:https://www.cnblogs.com/shangyu/p/3348500.html
Copyright © 2020-2023  润新知