美文网首页
2020-01-27(ccf201912-2回收站选址)

2020-01-27(ccf201912-2回收站选址)

作者: V_6619 | 来源:发表于2020-01-27 21:50 被阅读0次

过年后的重新营业

day1_頁面_04.png

思路: 存储位置

#include <iostream>
#include <cstring>
 using namespace std;
 
 bool isgar(int x[], int y[], int n, int a, int b)
 {
    bool f1 = false;
    bool f2 = false;
    bool f3 = false;
    bool f4 = false;
    for(int i=0; i<n; i++)
    {
        if(f1 && f2) break;
        if(x[i] == a)
          {
             if(y[i] == b+1) f1 = true;
             if(y[i] == b-1) f2 = true;
           }
     }
     
     for(int i=0; i<n; i++)
     {
        if(f3 && f4) break;
        if(y[i] == b)
         {
            if(x[i] == a+1) f3 = true;
            if(x[i] == a-1) f4 = true;
          }
     }
     
     if(f1 && f2 && f3 && f4) return true;
     else return false;
 }
 
 int score(int x[], int y[],int n, int a, int b)
 {
    int sc = 0;
    for(int i=0; i<n; i++)
    {
        if(x[i] == a-1)
        {
            if(y[i] == b-1) sc++;
            if(y[i] == b+1) sc++;
         }
        if(x[i] == a+1)
        {
            if(y[i] == b-1) sc++;
            if(y[i] == b+1) sc++;
         }
     }
     
     return sc;
  } 
 int main()
 {
    int n;
    cin>>n;
    int x[n];
    int y[n];
    int a,b;
    int res[5];
    memset(res, 0 ,sizeof(res));
    for(int i=0; i<n; i++)
    {
        cin>>a>>b;
        x[i] = a;
        y[i] = b;
     }
    for(int i=0; i<n; i++)
     {
        if(isgar(x, y, n, x[i], y[i])) 
          {
            if(score(x, y, n, x[i], y[i]) == 0) res[0] += 1;  
            if(score(x, y, n, x[i], y[i]) == 1) res[1] += 1; 
            if(score(x, y, n, x[i], y[i]) == 2) res[2] += 1; 
            if(score(x, y, n, x[i], y[i]) == 3) res[3] += 1; 
            if(score(x, y, n, x[i], y[i]) == 4) res[4] += 1; 
           }
     }
     for(int i = 0; i<5; i++)
      cout<<res[i]<<endl;
  } 

本来一开始想存整个坐标轴,首先,数据过于庞大会爆栈,另一方面,负数也很不好处理,所以就改成了存储位置,还要感谢阙先生的热心帮助(疯狂打call)

心得:嗯,我好菜呀

相关文章

网友评论

      本文标题:2020-01-27(ccf201912-2回收站选址)

      本文链接:https://www.haomeiwen.com/subject/aaoethtx.html