Teacher Bo (时间复杂度 + 暴力)
Posted wethura
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Teacher Bo (时间复杂度 + 暴力)相关的知识,希望对你有一定的参考价值。
如果你仔细看就会发现有一个数据很重要那就是点的范围,那么这样一来最多只有2 * maxn的不同曼哈顿距离了,这样一看只要暴力一下就可以过了。
#include<bits/stdc++.h> using namespace std; const int maxn = 1e5 + 7; int x[maxn], y[maxn]; bool cn[maxn * 2]; int cnt(int a, int b){ return abs(x[a] - x[b]) + abs(y[a] - y[b]); } bool solve(int n, int m){ if(n * (n - 1) > 2 * maxn) return true; memset(cn, false, sizeof(cn)); for(int i = 0; i < n; i ++) for(int j = i + 1; j < n; j ++) if(cn[cnt(i, j)]) return true; else cn[cnt(i, j)] = true; return false; } int main(){ int T, n, m;scanf("%d", &T); while(T -- ){ scanf("%d%d", &n, &m); for(int i = 0; i < n; i ++)scanf("%d%d", &x[i], &y[i]); printf("%s ", solve(n, m)?"YES":"NO"); } return 0; }
以上是关于Teacher Bo (时间复杂度 + 暴力)的主要内容,如果未能解决你的问题,请参考以下文章
牛客网NowCoder 2018年全国多校算法寒假训练营练习比赛(第四场)A.石油采集(dfs) B.道路建设(最小生成树prim) C.求交集(暴力) F.Call to your teacher