标签:cpp 同时存在 更新 bool edit only test rap efi
Dasha Code Championship - SPb Finals Round (only for onsite-finalists)
A. Anadi and Domino
https://codeforces.com/problemset/problem/1210/A
思路:当Grape中节点个数少于等于6个时,最多存在15条边,每个节点赋值一个点数,所以n <= 6 时,可存在变数为m,当Grape中节点的个数为7个时,必然是存在俩个节点属于同一标记的,因此枚举每俩个节点,
如果其他节点和这俩个节点同时存在边,则这条边必然是不可取的,因为各种类型的筛子只能取一个,所以需要减去
/* * @Author: CY__HHH * @Date: 2019-10-21 12:09:09 * @LastEditTime: 2019-10-21 12:09:09 */ #include<bits/stdc++.h> #define inf (0x3f3f3f3f) typedef long long i64; using namespace std; const int maxn = 32; bool Grape[maxn][maxn]; int main() { ios::sync_with_stdio(false); cin.tie(0); cout.tie(0); int n,m,u,v; cin >> n >> m; for(int i=0;i!=m;++i) { cin >> u >> v; Grape[u][v] = Grape[v][u] = true; } int minn = inf; if( n <= 6) cout << m <<‘\n‘; else{ for(int i=1;i<=n;++i) { for(int j=i+1;j<=n;++j) { int cnt = 0; for(int k=1;k<=n;++k) if(Grape[i][k]&&Grape[j][k]) ++cnt; minn = min(minn,cnt); } } cout << m - minn << ‘\n‘; } return 0; }
标签:cpp 同时存在 更新 bool edit only test rap efi
原文地址:https://www.cnblogs.com/newstartCY/p/11712900.html