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

「MCOI-07」Dream and More Discs

「MCOI-07」Dream and More Discs

首先考虑对于一个 \(x\)\(\leq x\) 的数构成什么结构:

image

对于所有红线左边的数,均 \(\leq x\),考虑我们只需要得到这些红线即可。

对于每个位置,初始时红线的可选区间为 \([0,2^m-1]\),接下来需要将红线的可选区间缩短。

这里我们采用二分的手法,考虑当前得到了红线为 \(mid\) 位置如下:

image

红线左边数的个数为 \(t=m_1+m_2+m_3+m_4\),且假设 \(x_1<x_2<x_3<x_4\)

显然,\(x_4\) 的排名不低于 \(t\)\(x_1\) 的排名不高于 \(t-n+1\)

首先考虑当 \(k \leq t\) 时,\(x_4\) 的排名必然 \(\geq k\),令 \(r_4 = m_4\)

\(k > t-n+1\)\(x_1\) 的排名必然 \(< k\),令 \(l_1 = m_1 + 1\)

显然两个条件必将满足至少一个,如此操作直到所有 \(l_i=r_i\) 即可。

然而这样会在已经存在某些 \(l_i=r_i\) 时出问题,我们需要忽略这些部分。

考虑当前对于 \(x_{\max}\) 的排名下界要减去 \(l_i=r_i\)\(x > x_{\max}\) 的部分。

同时 \(x_{\min}\) 的排名上界要加上 \(l_i=r_i\)\(x < x_{\min}\) 的部分。

#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
int n,m,k,Th;
long long a[60][1<<11];
int l[60],r[60],mid[60];
long long query(int id,int pos){if(a[id][pos]==0){cout<<"? "<<id<<" "<<pos<<endl;cin>>a[id][pos];}return a[id][pos];
}
struct Node{int pos;long long num;
}op[60];
bool operator <(const Node &lhs,const Node &rhs){return lhs.num<rhs.num;
} 
int main(){cin>>n>>m>>k>>Th;for(int i=1;i<=n;i++){a[i][0]=-1;l[i]=0;r[i]=(1<<m)-1;}while(true){int tot=0,sum=0;for(int i=1;i<=n;i++){mid[i]=(l[i]+r[i])>>1;sum+=mid[i];if(l[i]!=r[i]){op[++tot]=(Node){i,query(i,mid[i])};}}if(tot==0){break;}sort(op+1,op+tot+1);int tot_bigger=0;for(int i=1;i<=n;i++){if(l[i]==r[i]){if(query(i,l[i])>op[tot].num){tot_bigger++;}}}if(k<=sum-tot_bigger){r[op[tot].pos]=mid[op[tot].pos];}else{l[op[1].pos]=mid[op[1].pos]+1;}}int tot=0;for(int i=1;i<=n;i++){tot+=l[i];}while(tot>=k){int id=1;for(int i=2;i<=n;i++){if(query(i,l[i])>query(id,l[id])){id=i;}}if(tot==k){cout<<"! "<<id<<" "<<l[id]<<endl;return 0; }else{l[id]--;tot--;}}return 0;
}
http://www.jsqmd.com/news/1407801/

相关文章:

  • 2026年宁波高端酒店推荐:鄞州希尔顿惠庭全解析 - 起跑123
  • 汤阴快速卷帘门公司抗风卷帘门厂家铝合金卷帘门公司电话 - 企业信息推荐-2
  • 2026 年新发布:西宁专业的罗茨风机三叶款批发厂家哪家专业,用这台设备代替旧风机,工厂能耗居然直接降了两成 - 行业推荐官[官方】--
  • 延安足球场护栏施工厂家/机器人围栏厂家联系方式 - 行业鉴选官
  • 思茅球场护栏厂家/羽毛球场围网源头厂家联系方式 - 行业严选官
  • 2026年第3季度重庆市北碚眼镜实体店怎么选?围绕区县覆盖与跨区域场景、不同区域需求和服务范围与区县服务要点全面解析 - 小校长
  • 2026 年 8 月新发布:灵丘专业的影院隔音无机纤维喷涂施工厂家联系方式,影院噪杂观众频频离场,原来这小玩意儿能悄无声息搞定声场问题 - 行业严选官
  • 2026年电熨斗电源线插头靠谱厂家推荐合集 - 起跑123
  • 2026 年现阶段,六盘水靠谱的石雕棺厂家推荐几家,千年古墓葬里藏着的这玩意儿,竟颠覆了考古界对丧葬形制的认知? - 行业推荐官-2
  • 2026深圳罗湖区正规搬家服务商,资质齐全的高口碑搬家公司汇总解析 - 禧燕搬家
  • 上下文工程:Agent 的“工作台”收拾好没
  • 2026无锡GEO推广企业横向评测 多家正规机构信息汇总 - 起跑123
  • 模拟赛 c7-B rgb
  • 2026精选河北可靠的电力塔直销厂家哪个好?泰基诚科技值得关注 - 装修教育财税推荐2026
  • 2026年采购硬质合金旋转锉 可关注丰华硬质合金刃具厂 - 起跑123
  • 2026深圳工厂仓库设备迁移正规公司汇总:持道路运输许可证、配备起重机械的靠谱服务商 - 禧燕搬家
  • 2026 年现阶段,宜阳本地电焊机回收公司推荐,那些堆在车间角落的旧设备,最后都被它悄悄拉走换了实在的好处-通茂回收 - 行业推荐官【认证】
  • 2026 年新发布:天长热门的抖音代运营公司企业电话,花冤枉钱的抖音涨粉坑,原来有这样的解决门道?-抖企盈获客服务 - 行业推荐官-2
  • 2026 年当下,路南评价高的车床外防护厂家联系方式,车间里藏着的安全屏障,竟能帮工厂省下大笔运维成本你敢信?-鑫姆迪克机床防护罩 - 行业推荐官[官方】--
  • TLS通信加密 对称加密 公钥加密
  • 2026 年新消息:安吉本地混凝土绳锯切割公司怎么联系,拆楼断梁不用砸,这玩意儿为何成了工程人抢着用的香饽饽? - 行业严选官
  • 2026精选:Geo推广实力公司怎么选?云南智客云AI推广凭什么值得推荐 - 装修教育财税推荐2026
  • 2026年注意事项重庆市配镜终身售后时效科普:最新要点与实用解读、当前变化和行业参考、核心知识与常见疑问,关键事项一文讲清 - 小校长
  • 2026年德兴市优质家具厂推荐 永恒家居实力靠谱值得选 - 起跑123
  • 2026 年更新:高唐正规的非标钢管厂生产商有哪些,别再乱找管材了,这家藏在深巷里的厂,连定制到极致的钢管都能做。 - 行业推荐官[官方】--
  • 2026绍兴代理记账亲测,3家靠谱经验复盘 - 花开富贵112
  • 2026 年青浦诚信的S20-M油浸式变压器(二级能效)供货商哪个好,你家工厂还在用高耗能变压器?这货帮你年省电费超15%-华屹变压器 - 行业鉴选官
  • 2026年第3季度重庆市罗敦司得眼镜店问答解惑:用户关心的问题与判断方法、高频疑问和注意事项 - 小校长
  • 锅炉引风机怎么选?高性价比厂商筛选的四个关键点 - 装修教育财税推荐2026
  • 2026年第3季度重庆市儿童第一次近视配镜推荐店选择参考:怎么选更适合实际需求、适用人群与选择标准 - 小校长