zoukankan      html  css  js  c++  java
  • 蓝桥杯 幸运顾客

    题目描述:
    为了吸引更多的顾客,某商场决定推行有奖抽彩活动。“本商场每日将产生一名幸运顾客,凡购买30元以上商品者均有机会获得本商场提供的一份精美礼品。”该商场的幸运顾客产生方式十分奇特:每位顾客可至抽奖台抽取一个幸运号码,该商场在抽奖活动推出的第i天将从所有顾客中(包括不在本日购物满30元者)挑出幸运号第i小的顾客作为当日的幸运顾客。该商场的商品本就价廉物美,自从有奖活动推出后,顾客更是络绎不绝,因此急需你编写一个程序,为他解决幸运顾客的产生问题。
    【输入数据】
      第1行一个整数N,表示命令数。
      第2~N+1行,每行一个数,表示命令。如果x>=0,表示有一顾客抽取了号码x;如果x=-1,表示傍晚抽取该日的幸运号码。
    【输出数据】
      对应各命令-1输出幸运号码;每行一个号码。(两个相同的幸运号看作两个号码)
    样例输入
    6
    3
    4
    -1
    -1
    3
    -1
    样例输出
    3
    4
    4
    解释
      只关注获奖的号码是多少,每个号码可以获奖多次。
    数据规模及约定
      共10组数据。
      对100%的数据,N=10^6所有命令为-1或int范围内的非负数,前i的命令中-1的数量不超过[i/2](向下取整)。
    蓝桥杯官网这道题的评测有点问题,这道题目没有测试数据,提交什么代码都是0分。
    所以不知道自己的代码对不对。
    参考自https://blog.csdn.net/weixin_40061167/article/details/78771184
     1 #include <bits/stdc++.h>
     2 using namespace std;
     3 int luck[1000010];
     4 int main() {
     5     int n = 0;
     6     cin >> n;
     7     int luckycount = 0;
     8     int luckyday = 0;
     9     for (int i = 0; i < n; i++) {
    10         int t;
    11         cin >> t;
    12         if (t != -1) {
    13             luck[luckycount] = t;
    14             luckycount++;
    15         } else {
    16             sort(luck, luck + luckycount);
    17             cout << luck[luckyday] << endl;
    18             luckyday++;
    19         }
    20     }
    21     return 0;
    22 }
  • 相关阅读:
    scp 利用 ssh 协议 复制文件
    linux (fedora 28) 制作启动U盘,启动盘
    nc 命令使用详解
    env :让系统决定你命令的位置
    tali -f 和 tail -F 之间的区别
    斯诺克台球比赛规则 (Snooker)
    中式台球 规则 ( ChinaBilliards )
    美式九球比赛规则 (Nine-ball)
    Tmux 使用教程 on Fedora 28
    python 3.6 的 venv 模块
  • 原文地址:https://www.cnblogs.com/fx1998/p/12719690.html
Copyright © 2011-2022 走看看