当前位置: 首页 > news >正文

网页设计太难了北京网站优化服务

网页设计太难了,北京网站优化服务,jsp动态网站建设代码,杭州电商网站开发登录—专业IT笔试面试备考平台_牛客网 题目大意:有一个n个数的数组a,有n-1轮操作,每轮由每个数选择一个和它的差最大的数,如果相同就选值更大的,被最多数组选择的数字被删去,有相同的也去掉数值更大的那个…

登录—专业IT笔试面试备考平台_牛客网

题目大意:有一个n个数的数组a,有n-1轮操作,每轮由每个数选择一个和它的差最大的数,如果相同就选值更大的,被最多数组选择的数字被删去,有相同的也去掉数值更大的那个,问最后剩下的是哪一个数字

1<=n<=1e6;1<=ai<=1e9

思路:每次操作一定是删除最大数或者最小数的其中一个,所以我们可以将数组排序然后模拟操作,维护当前剩余数的区间左右端点l,r,求出当前区间长度len=r-l+1,因为右边的数肯定选最小的那个,左边的数肯定选最右边那个,所以我们看中间的那个数选择哪个,如果len是偶数,要看中间偏左的那一个,因为平票是会选数值更大那一个的,也就是最大值,然后看中间值和右边的差,如果右边的差大于等于左边,就投出右边的,r--反之l++,直到l=r,最后在原数组中找到最后剩下的数的位置即可

//#include<__msvc_all_public_headers.hpp>
#include<bits/stdc++.h>
using namespace std;
const int N = 1e6 + 5;
typedef long long ll;
int a[N];
int b[N];
int main()
{int n;cin >> n;for (int i = 1; i <= n; i++){cin >> a[i];b[i] = a[i];//保留原数组}sort(a + 1, a + n + 1);int l = 1, r = n;while (l < r){int len = r - l + 1;int pos = len / 2 + l;if (len % 2 == 0)pos--;//偶数时要选左边的if (a[r] - a[pos] >= a[pos] - a[l]){//右边差大于左边或者平票都是投出最右边的r--;}elsel++;}for (int i = 1; i <= n; i++){if (b[i] == a[l])//在原数组中找到最后剩下的数{cout << i << endl;break;}}return 0;
}

http://www.jinmujx.cn/news/116292.html

相关文章:

  • 一个虚拟主机可以做几个网站今日国内新闻头条15条
  • 包头网站 建设计算机编程培训学校哪家好
  • 哪个网站做货车专业百度投诉中心入口
  • 欢迎访问中国建设银行官方网站品牌推广公司
  • 网站登录按钮怎么做苏州网站建设制作公司
  • 青岛网站推广关键词软文有哪些发布平台
  • 宁志网站两学一做站长seo综合查询工具
  • 网站建设收获与不足青岛谷歌优化公司
  • 深圳网站建设哪个公司好宣传软文怎么写
  • 企业网站设计的特点百度浏览器官网在线使用
  • 做网站公司哪家比较好网络营销推广机构
  • 建设银行河南省分行招聘网站黑帽seo技术
  • 做蔬菜批发的网站网页优化方法
  • 免费建微网站百度金融
  • 注册网站费用明细免费推广软件 推广帮手
  • 贵州两学一做专题网站全网最全搜索引擎app
  • 网站开发主要包括的事项关键词排名推广公司
  • 网站推介方案新手怎么做电商
  • 万表网深圳seo公司助力网络营销飞跃
  • 直播软件推荐新泰网站seo
  • 网线制作和测试的流程seo排名赚app下载
  • 怎样做私人时时彩网站页面seo优化
  • 五台网站建设网络推广怎么赚钱
  • 做网站难还是app难链接生成器
  • 西青网站建设常见的微信营销方式有哪些
  • 独立建站平台seo推广优化官网
  • 企业网站界面风格设计描述百度推广关键词
  • 微信商城购物有保障吗seo教学网seo
  • 设计师拥有的设计导航台州百度推广优化
  • 柳市那些做网站的公司百度客户服务电话