P1918 保龄球

    • 534通过
    • 1.5K提交
  • 题目提供者 lyx613
  • 评测方式 云端评测
  • 标签 二分查找 快速排序,快排 模拟 高性能
  • 难度 普及-
  • 时空限制 1000ms / 128MB

题解

  • 提示:收藏到任务计划后,可在首页查看。
  • 最新讨论 显示

    推荐的相关题目 显示

    题目描述

    DL 算缘分算得很烦闷,所以常常到体育馆去打保龄球解闷。因为他保龄球已经打了几十年了,所以技术上不成问题,于是他就想玩点新花招。

    DL 的视力真的很不错,竟然能够数清楚在他前方十米左右每个位置的瓶子的数量。他突然发现这是一个炫耀自己好视力的借口——他看清远方瓶子的个数后从某个位置发球,这样就能打倒一定数量的瓶子。

    1 OOO

    2 OOOO

    3 O

    4 OO

    如上图,每个“O”代表一个瓶子。如果 DL 想要打倒 3 个瓶子就在 1 位置发球,想要打倒 4 个瓶子就在 2 位置发球。

    现在他想要打倒 m 个瓶子。他告诉你每个位置的瓶子数,请你给他一个发球位置。

    输入输出格式

    输入格式:

    输入文件名为 bowling.in。

    第一行包含一个正整数 n,表示位置数。

    第二行包含 n 个正整数,第 i 个数。表示第 i 个位置的瓶子数,保证各个位置的瓶子数不同。

    第三行包含一个正整数 Q,表示 DL 发球的次数。

    第四行至文件末尾,每行包含一个正整数 m,表示 DL 需要打倒 m 个瓶子。

    输出格式:

    输出文件名为 bowling.out。

    共 Q 行。每行包含一个整数,第 i 行的整数表示 DL 第 i 次的发球位置。若无解,则输出 0。

    输入输出样例

    输入样例#1: 复制
    5
    1 2 4 3 5
    2
    4
    7
    
    输出样例#1: 复制
    3
    0
    

    说明

    【数据范围】

    对于 50%的数据,1 ≤ n,Q ≤ 1000,1 ≤ai,M ≤ 10^5

    对于 100%的数据,1 ≤ n,Q ≤ 100000,1 ≤ai,M ≤ 10^9

    提示
    标程仅供做题后或实在无思路时参考。
    请自觉、自律地使用该功能并请对自己的学习负责。
    如果发现恶意抄袭标程,将按照I类违反进行处理。