1. Job Roadmap
  2. Home
  3. Problem Set
  4. codenotelist
  5. Forum
  6. course
  7. Shore Share Sessions
  8. Record
  1. Login
  2. Sign Up
  3. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
    ZhContent TextSol AI分析

解题思路

  1. 先用哈希表统计数组每个值出现次数 freq[v](数组已排序但不影响,用哈希更快)。

  2. 对每个询问:

    • 若 (x=0):(0^K=0)((K>=1)),所以只可能是 (a=y) 总数=峰值=freq[y]
    • 若 (x=1):(1^K=1),所以只可能是 (a=y+1) 总数=峰值=freq[y+1]
    • 若 (x>=2):(x^K) 严格递增,只需枚举 (K=1,2,3......),不断乘 (x) 得到幂 p:

P4534.第1题-指数退避

    1000ms Tried: 789 Accepted: 95 Difficulty: 5 所属公司 : 华为
    算法与标签>哈希表

题目内容

服务器常用指数退避策略来避免网络拥塞,每次访问失败后,会大间隔间隔成倍后再访问,下次重试的间隔在最大间隔内随机化。小华作为测试人员模拟了一些输入,服务器后台可看到nnn个访问时间点,第iii个为a[i]a[i]a[i](其中a[i]a[i]a[i]值可能重复)。现在他想知道对于一个数对(x[j],y[j])(x[j],y[j])(x[j],y[j]),满足a[i]=(x[j])K+y[j]a[i] = (x[j])^K + y[j]a[i]=(x[j])K+y[j]的访问一共有多少个,峰值是多少?

注:KKK看可取任意正整数,峰值指K取某一整数时满足a[i]=(x[j])K+y[j]a[i] =(x[j])^K+y[j]a[i]=(x[j])K+y[j]的数量的最大访问个数。

输入描述

第111行两个整数n,mn,mn,m,用空格隔开。表示有nnn个数,mmm次询问(1<=n<=100000,1<=m<=200000)(1<=n<=100000,1 <= m <=200000)(1<=n<=100000,1<=m<=200000)。

第222行有nnn个数,用空格隔开,第iii个数为a[i](1<=i<=n,1<=a[i]<=1000000000)a[i] (1<=i <= n,1 <= a[i] <=1000000000)a[i](1<=i<=n,1<=a[i]<=1000000000),从小到大排序。

从第333行到第m+2m+2m+2行,每行两个整数,用空格隔开,表示给定一个整数数对(x[j],y[j])(0<=x[i],y[j]<=10000000)(x[j],y[j]) (0 <= x[i],y[j] <=10000000)(x[j],y[j])(0<=x[i],y[j]<=10000000)

输出描述

mmm行,每行两个数,第jjj行回答询问对于(x[j],y[j])(x[j],y[j])(x[j],y[j]),可满足a[i]=(x[j])K+y[j]a[i] =(x[j])^K + y[j] a[i]=(x[j])K+y[j](KKK取任意正整数)的数量一共有多少个,峰值为多少,用空格隔开。

样例1

输入

4 2
45 78 90 429981774
12 78 
9 42561285

输出

2 1 
1 1

说明

对于第一组询问,要满足a[i]=12K+78a[i]=12^K+78a[i]=12K+78,当KKK取111时121+78=90=a[3]12^1+78=90=a[3]121+78=90=a[3],此时刻有1个访问。

128+78=429981774=a[4]12^8+78=429981774=a[4]128+78=429981774=a[4],此时刻有1个访问。因此一共2个,峰值为1。

对于第二组询问,要满足a[i]=9K+42561285a[i]=9^K+42561285a[i]=9K+42561285,当KKK取999时99+42561285=429981774=a[4]9^9+42561285 =429981774=a[4]99+42561285=429981774=a[4]。因此一共1个,峰值为1。

样例2

输入

11 3
2 3 4 5 5 6 7 7 9 16 17
2 0
2 1
0 7

输出

3 1 
5 2
2 2

说明

对于第一组询问要满足a[i]=2K+0a[i]=2^K+0a[i]=2K+0,当KKK取1,2,41,2,41,2,4时:

21+0=2=a[1]2^1+0=2=a[1]21+0=2=a[1],此时刻有1个访问

22+0=4=a[3]2^2+0=4=a[3]22+0=4=a[3],此时刻有1个访问

24+0=16=a[10]2^4+0=16=a[10]24+0=16=a[10],此时刻有1个访问

因此一共333个,蜂值为111。

对于第二组询问,要满足a[i]=2K+1a[i]=2^K+1a[i]=2K+1的a[i]a[i]a[i],当KKK取1,2,3,4,2,3,4,2,3,4时:

21+1=3=a[2]2^1+1=3=a[2]21+1=3=a[2],此时刻有111个访问

22+1=5=a[4]=2[5]2^2+1=5=a[4]=2[5]22+1=5=a[4]=2[5],此时剪有222个访问

23+1=9=[9]2^3+1=9=[9]23+1=9=[9],此时充有111个访问

24+1=17=a[11]2^4+1=17= a[11]24+1=17=a[11],此时完有111个访问

因此一共555个,峰值为222

对于第三组询问要满足a[i]=0K+7a[i]=0^K+7a[i]=0K+7的a[i]a[i]a[i],值只能为777。a[7]=a[8]=7a[7]=a[8]=7a[7]=a[8]=7,有两个数满足因此一共222个,峰值为222

登录后即可使用 AI 分析。

模式
倒计时时长
:

最长 10 小时 59 分;应用后按此时长重新开始。

提示:点击提交记录在左侧题面区域查看详情
题库
AI分析设置
留空使用官方API Key,每天有次数限制(自定义API Key仅限会员和管理员使用,不限次数)
会员和管理员可切换模型;切到 Kimi/智谱/通义/豆包时需填写对应供应商 API Key
升级会员,可将运行与提交冷却时间缩短至 1 秒起

Status

  • Judging Queue
  • Service Status

Development

  • Open Source

Support

  • Help
  • Contact Us

About

  • About
  • Privacy
  • Terms of Service
  • Copyright Complaint
  1. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
  2. Legacy mode
  3. Theme
    1. Light
    2. Dark
  1. 京ICP备2025123107号-1
  2. Worker 2, 115ms
  3. Powered by Hydro v5.0.0-beta.18 Community
CLOSE


ScanQRCodePrompt

请使用微信扫描下方二维码完成注册

Forgot password or username?