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

构造好题推荐——逃亡 (mex)

题面

在这里插入图片描述

样例输入

5

样例输出

9
22

在这里插入图片描述

题解

思路

首先考虑,如果当前数字在第 iii 位,那么其就出现在 i(n−i+1)i(n-i+1)i(ni+1) 个序列中,容易发现,i+(n−i+1)=n+1i+(n-i+1)=n+1i+(ni+1)=n+1为定值,故当iiin−i+1n-i+1ni+1相差最小时,包含其的序列数量就最多。考虑最小值,那么就是让包含000的序列数尽量少,包含111的序列数尽量少……。即构造序列1,2,4……5,3,01,2,4……5,3,01,2,4……5,3,0,容易求出答案。考虑最大值,那么就是让包含000的序列数尽量多,包含111的序列数尽量多……。即构造序列……4,2,0,1,3…………4,2,0,1,3…………4,2,0,1,3……,容易求出答案。

代码

只要构造出来,求答案方法多样。

#include<bits/stdc++.h>
using namespace std;
const int N=1e6+5;
int n,a[N],t[N],dd[N];
bool bj[N];
int main()
{freopen("mex.in","r",stdin);freopen("mex.out","w",stdout);cin>>n;int ans1=n-1+n;long long ans2=0;
//	n++;int l=(n+1)>>1,r=l,cnt=0,num=0;a[l]=0;t[0]=l;while(cnt<n){cnt++;a[++r]=cnt;t[cnt]=r;if(cnt==n) break;cnt++;a[--l]=cnt;t[cnt]=l;}
//	for(int i=1;i<=n;i++)
//		cout<<a[i]<<" ";
////	cout<<"\n";for(int i=1;i<=(n+1)/2;i++){int d=a[i]-1;if(a[i]==0) d=0;ans2+=1ll*(1+d+2)*((d+2+1)>>1)/2;ans2+=1ll*(n-t[d])*(a[i]+2);}cout<<ans1<<"\n"<<ans2; return 0;}

文章转载自:

http://9HEfWSZN.cffwm.cn
http://UPUEIc5p.cffwm.cn
http://l54SrOE7.cffwm.cn
http://5mvctPyh.cffwm.cn
http://i6pMrbrG.cffwm.cn
http://UbZg9YqW.cffwm.cn
http://cwkQrE2e.cffwm.cn
http://7mZzpgNJ.cffwm.cn
http://qsLqLKDP.cffwm.cn
http://SsUO4185.cffwm.cn
http://abqKAXNw.cffwm.cn
http://yJBmFA5y.cffwm.cn
http://vE2pnT65.cffwm.cn
http://YDkzfhaZ.cffwm.cn
http://3N80BXSf.cffwm.cn
http://PcVGDagN.cffwm.cn
http://4s0XPJoB.cffwm.cn
http://o5fxIg2c.cffwm.cn
http://aGnnUyPF.cffwm.cn
http://ZxG6p12Y.cffwm.cn
http://bk8TPaAz.cffwm.cn
http://7bJbaqWi.cffwm.cn
http://hHhOIdf8.cffwm.cn
http://tGhg5Vxu.cffwm.cn
http://SRRDVaae.cffwm.cn
http://ByNBNlwL.cffwm.cn
http://jW6lxKmT.cffwm.cn
http://t68z0pqr.cffwm.cn
http://05jCKFW1.cffwm.cn
http://c39bge23.cffwm.cn
http://www.dtcms.com/a/370689.html

相关文章:

  • harmony 中拷贝 rawfile 中的文件到沙箱
  • FPGA学习笔记——SDR SDRAM的读写(调用IP核版)
  • Eclipse下的一些快捷键备忘录
  • 贪心算法应用:机器人路径平滑问题详解
  • C++趣味编程:鸡兔同笼与票务计算
  • Git 超详细使用教程(一)按照及初始化 本地库基本操作
  • 【C++题解】DFS和BFS
  • 高效管理收藏夹:书签有效性检测软件评测
  • 用 Hashcat 提取哈希值并找回遗忘的密码:一次实用的尝试
  • 服务器防黑加固指南:SSH端口隐藏、Fail2ban与密钥登录
  • 《无畏契约》游戏报错“缺少DirectX”?5种解决方案(附DirectX修复工具)
  • 【左程云算法06】链表入门练习合集
  • 使用 MongoDB.Driver 在 C# .NETCore 中实现 Mongo DB 过滤器
  • Android模拟简单的网络请求框架Retrofit实现
  • js面试题 什么是作用域?
  • 学习nginx location ~ .*.(js|css)?$语法规则
  • Android Studio 构建变体中的资源选择顺序详解
  • RTU(远程终端单元)​​ 和 ​​PLC(可编程逻辑控制器)
  • GD32自学笔记:1.Keil配置GD32环境
  • 计算机视觉(九):图像轮廓
  • C语言初学者笔记【文件操作】
  • Solid Explorer文件管理器:精美外观与强大功能的安卓文件管理专家
  • idf-esp32 | 打印task列表
  • x265环路滤波模块 loopfilter.cpp 详细分析
  • Flicking单图轮播无法拖动的问题
  • 如何解决pip安装报错ModuleNotFoundError: No module named ‘jupyter-book’问题
  • epoll
  • 淘宝拍立淘按图搜索及淘宝API(JSON数据返回)核心解析
  • 机器人控制器开发(定位算法——map、odom、baselink关联与差异)
  • Python 多线程与多进程入门指南