AT3517 Different Distribution
题意
其实就是让我们求最大的 x 与其相对应的 y 的和。
可以用简单的遍历每一个信息,如果比之前的 x 大,就更新 x 与 x+y,最后输出即可。
时间复杂度为 O(n) 。
#include <bits/stdc++.h>
using namespace std;
int n,x,y,maxX=-0x3f3f3f3f,dsum;
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>x>>y;
if(x>maxX){ // 更新维护的最大x与其对应的x+y
maxX=x;
dsum=x+y;
}
// 如果没有大于以前的就不更新
}
cout<<dsum<<endl; // 最后输出维护的x+y
return 0;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步