InTheBloodHorse

每日一题(49) codeforces 1091B

字数统计: 309阅读时长: 1 min
2019/01/13 Share

题目地址

题意

给n个坐标以及n个向量,坐标与向量组合可以得到一个目的坐标,要求输出每个坐标与任意一个向量组合都可以得到的目的坐标的坐标。(可能有多个,随意输出哪个)

思路

n最大为1000,所以可以暴力求解。暴力将每一个坐标与每一个向量进行组合,并计数,计数为n的坐标就是目标坐标了。

AC代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include<bits/stdc++.h>
using namespace std;
int n;
map<pair<int,int>,int>m;
vector<pair<int,int> >v1;
vector<pair<int,int> >v2;
int main()
{
cin >> n;
int x,y;
for(int i=0;i<n;i++){
cin >> x >> y;
v1.push_back(make_pair(x,y));
}
for(int i=0;i<n;i++){
cin >> x >> y;
v2.push_back(make_pair(x,y));
}
for(int i=0;i<v1.size();i++){
x=v1[i].first;
y=v1[i].second;
for(int j=0;j<v2.size();j++){
m[make_pair(x+v2[j].first,y+v2[j].second)]++;
}
}
map<pair<int,int>,int>::iterator iter;
for(iter=m.begin();iter!=m.end();iter++){
if(iter->second==n){
cout << iter->first.first << " " << iter->first.second << endl;
return 0;
}
}
}

原文作者:InTheBloodHorse

原文链接:http://pyking.cn/2019/01/13/每日一题-49-codeforces-1091B/

发表日期:January 13th 2019, 9:27:44 pm

更新日期:January 13th 2019, 9:37:20 pm

版权声明:Have a fun

CATALOG
  1. 1. 题意
  2. 2. 思路