u1s1,好难。。两个小时根本做不完。最后找第三题的bug找到凌晨四点才过。


 

 

试题链接:2019校招笔试编程题合集 

 

1、城市修建

题意:有一个城市需要修建,给你N个民居的坐标X,Y,问把这么多民居全都包进城市的话,城市所需最小面积是多少(注意,城市为平行于坐标轴的正方形)

 

题解:记得看题,是正方形!!!。先开始一直没过以为是长方形来着。。

记录输入的最大x,y和最小小x,y。然后相减,比较减出来最大的那个就是所求边长了。

 

代码:

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 #define ll long long
 4 const int inf = 1e9*5;
 5 
 6 
 7 int main(){
 8     int n;
 9     cin>>n;
10     ll x,y;
11     ll x1 = inf,y1 = inf;
12     ll x2 = -inf,y2 = -inf;
13     for(int i = 0 ;i < n;i++){
14         cin>>x>>y;
15         x1 = min(x,x1);
16         y1 = min(y,y1);
17         x2 = max(x,x2);
18         y2 = max(y,y2);
19     }
20 
21     ll width = abs(x2-x1);
22     ll height = abs(y2-y1);
23 
24     ll ans = max(width,height);
25  
26     cout<<ans*ans<<endl;
27 
28     return 0;
29 }
View Code

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-07-21
  • 2022-12-23
  • 2021-08-25
  • 2022-12-23
  • 2021-06-08
  • 2021-09-08
猜你喜欢
  • 2022-01-03
  • 2021-09-18
  • 2021-09-11
  • 2021-08-17
  • 2021-12-19
  • 2022-12-23
  • 2021-12-19
相关资源
相似解决方案