当前位置:网站首页>Cfdiv2 Fixed Point Guessing - (2 points for Interval answer)
Cfdiv2 Fixed Point Guessing - (2 points for Interval answer)
2022-07-03 02:04:00 【Jolie fille.】
Titre:
C'est juste pour toi1ÀnTableau de,Mais ça s'est passén+1/2Sous - échange,Chaque numéro n'est échangé qu'une seule fois,Donc un seul nombre n'a pas été échangé.Alors vous pouvez demander15Une fois,Un intervalle à la fois,Vous renvoie le nombre de cet intervalle de petit à grand après l'arrangement.Maintenant, demandez - vous quel nombre n'a pas été échangé.
Penser:
J'ai commencé à voir15Je savais que c'était deux points,Mais je pensais que oui.dfsDeux points,Chaque jugement récursif.Mais je ne me sens pas très bien pour écrire.En fait,Pour deux points,Vous pouvez diviser la réponse en deux parties dans quelle plage.C'est - à - dire juger d'abordlÀr,Si la réponse est là,r = mid.Sinonl = mid+1.C'est - à - dire dans l'autre section.C'est un simple jugement dans quelle section,Il n'y a pas de réponse, mieux c'est, pire c'est.Mais comment juger,En fait,,Nombre d'entréesx,SixInlÀrÀ l'intérieur,Ça veut dire qu'il l'a échangé contre,Alors les nombres apparaîtront deux fois,Sinon, c'est0Une fois.Mais quel nombre sans échange contribue une fois,Donc si c'est un nombre impair,Alors la réponse est cette section.
Code:
#include<bits/stdc++.h>
#define fi first
#define se second
#define pb push_back
#define db double
#define int long long
#define PII pair<int,int >
#define mem(a,b) memset(a,b,sizeof(a))
#define IOS std::ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);
using namespace std;
const int mod = 1e9+7,inf = 1e18;
const int N = 2e5+10,M = 2010;
int T,n,m,k;
int va[N];
int check(int l,int r)
{
cout<<"? "<<l<<" "<<r<<"\n";
cout.flush();
int sum = 0;
for(int i=l;i<=r;i++)
{
int x;
cin>>x;
if(x>=l&&x<=r) sum++;
}
return sum;
}
signed main()
{
cin>>T;
while(T--)
{
cin>>n;
int l = 1,r = n;
while(l<r)
{
int mid = (l+r)/2;
if(check(l,mid)&1) r = mid;
else l = mid+1;
}
cout<<"! "<<l<<"\n";
}
return 0;
}
Résumé:
Réfléchis.,Accumuler de l'expérience.
边栏推荐
- stm32F407-------DMA
- LabVIEW安装第三方VISA软件后NI VISA失效
- Analysis, use and extension of open source API gateway apisex
- NCTF 2018 part Title WP (1)
- Network security - firewall
- 树形结构数据的处理
- 小程序开发的部分功能
- DDL basic operation
- Function definition and call, this, strict mode, higher-order function, closure, recursion
- 詳細些介紹如何通過MQTT協議和華為雲物聯網進行通信
猜你喜欢

可视化yolov5格式数据集(labelme json文件)

Rockchip3399 start auto load driver

Bottleneck period must see: how can testers who have worked for 3-5 years avoid detours and break through smoothly

Redis: simple use of redis

Wechat applet development tool post net:: err_ PROXY_ CONNECTION_ Failed agent problem

树形结构数据的处理

详细些介绍如何通过MQTT协议和华为云物联网进行通信

stm32F407-------DMA

【Camera专题】Camera dtsi 完全解析

Custom components, using NPM packages, global data sharing, subcontracting
随机推荐
网络安全-防火墙
His experience in choosing a startup company or a big Internet company may give you some inspiration
Leetcode(540)——有序数组中的单一元素
【Camera专题】手把手撸一份驱动 到 点亮Camera
Visualisation de l'ensemble de données au format yolov5 (fichier labelme json)
Groovy, "try with resources" construction alternative
When the epidemic comes, how to manage the team as a leader| Community essay solicitation
网络安全-NAT网络地址转换
[fluent] hero animation (hero animation use process | create hero animation core components | create source page | create destination page | page Jump)
stm32F407-------DMA
Query product cases - page rendering data
自定义组件、使用npm包、全局数据共享、分包
DDL basic operation
网络安全-破解系统密码
去除网页滚动条方法以及内外边距
Caused by: com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot construct instance o
Network security - Information Collection
Missing library while loading shared libraries: libisl so. 15: cannot open shared object file: No such file
"Jetpack - livedata parsing"
Wechat applet Development Tool Post net:: Err Proxy Connexion Problèmes d'agent défectueux