1139. First Contact (30)
来源:互联网 发布:淘宝神舟昆山工厂店 编辑:程序博客网 时间:2024/06/05 10:22
需要注意的点:
1、四位id,诸如0001也是正确的,所以最后需要printf格式化输出
2、四位id,诸如-0000也是可以的,所以读取时,需要用字符串读取,而不是整数
AC代码如下
#include <bits/stdc++.h>using namespace std;struct friends{ int x,y; friends(int a,int b):x(a),y(b){}};vector<int> v[10000];bool matrix[10000][10000];void search(vector<friends> &ans,int a,int b){ for(int x:v[a]) { for(int y:v[b]) { if(x==y||x==b||y==a)continue;//same gender circumstance if(matrix[x][y])ans.push_back(friends(x,y)); } }}bool cmp(const friends &a,const friends &b){ return a.x==b.x?a.y<b.y:a.x<b.x;}int main(){ //freopen("1.txt","r",stdin); int n,m,k; cin>>n>>m; for(int i=0;i<m;++i) { string a,b; cin>>a>>b; if(a.size()==b.size())//same gender { v[abs(stoi(a))].push_back(abs(stoi(b))); v[abs(stoi(b))].push_back(abs(stoi(a))); } matrix[abs(stoi(a))][abs(stoi(b))]=matrix[abs(stoi(b))][abs(stoi(a))]=true;//are friends } cin>>k; while(k--) { int a,b; cin>>a>>b; vector<friends> ans;//collect answer search(ans,abs(a),abs(b)); sort(ans.begin(),ans.end(),cmp); cout<<ans.size()<<endl; for(auto w:ans) printf("%04d %04d\n",w.x,w.y); } return 0;}
阅读全文
0 0
- 1139. First Contact (30)
- 1139. First Contact (30)
- 1139. First Contact (30) DFS
- First Contact (30)
- PAT 1139. First Contact (30) 图的存储+相连判断
- Chapter 6. First Contact: DirectDraw
- 【First Day On Work】Contact Info
- BNUOJ 44583 Star Trek: First Contact
- contact
- Contact
- Contact
- contact
- Contact
- Contact
- contact
- 资源推荐 | TensorFlow电子书《FIRST CONTACT WITH TENSORFLOW》
- 资源推荐 | TensorFlow电子书《FIRST CONTACT WITH TENSORFLOW》
- 【BNU校赛】F. Star Trek: First Contact(裸0-1背包)
- 关于java实现金字塔的写法的心得体会
- 第十周项目1
- 物理知识(三)
- 项目管理3
- Unity动态构建Mesh来绘制任意多边形
- 1139. First Contact (30)
- (ssl 2291)分组背包
- 汇编语言学习----汇编程序中的子程序设计
- HDU 2519.新生晚会
- 洛谷P3389 【模板】高斯消元法
- wordpress导入数据错误MySQL返回:#1273
- 物理知识(四)
- linux中路由、策略路由
- opencv库图像特征提取与匹配--参考SLAM十四讲7.2