zoukankan      html  css  js  c++  java
  • 吃货

    【问题描述】

      他有一个有 n 块食物,大小均在 1 到 n 之间,且各不相同,食物每天提供一块。有一 个吃货,特殊的进餐习惯,他会每天吃一块食物,他会先吃大的。比如第一天就会吃大小为 n,第二天吃大小 n-1,第三天吃大小为 n-2……。如果某一天食物的大小不对的话,他会 将食物暂时囤积起来,一直等着这个食物出现,然后将之前的食物按从大到小的顺序一口气 吃掉。

    【输入数据】

      第一行,一个整数 n (1≤n≤100000) ,表示食物的数量。 第二行,n 个整数,依次表示每天的食物的大小。

    【输出数据】

      输出共 n 行,每行若干个数,第一个数表示当前是第几天,接下来若干是,依次表示 当天吃掉的食物的大小,若当天没有吃,则不输出。

    【输入样例 1】

      3 3 1 2

    【输出样例 1】

      1 3 2 3 2 1

    【样例解释】

      第一天吃最大的 3;第二天等待,不吃;第三天吃 2 和 1。

    【输入样例 2】

      5 4 5 1 2 3

    【输出样例 2】

      1 2 5 4 3 4 5 3 2 1

    【样例解释】

      第一天等待,不吃;第二天吃 5 和 4;第三天等待,不,;第四题等待,不吃;第五天吃 3、 2、1。

    模拟大水题,废话不说直接放代码

     1 #include<cstdio>
     2 int a[100005],b[100005],flag,n;
     3 int main(){
     4     freopen("eat.in","r",stdin);
     5     freopen("eat.out","w",stdout);
     6     scanf("%d",&n);
     7     for(int i=1;i<=n;i++)scanf("%d",&a[i]);
     8     flag=n;
     9     for(int i=1;i<=n;i++){
    10         printf("%d ",i);
    11         b[a[i]]=1;
    12         while(b[flag])printf("%d ",flag),flag--;
    13         printf("
    ");
    14     }
    15 }
  • 相关阅读:
    1.7 Matrix Zero
    1.6 Image Rotation
    Snake Sequence
    安装 Docker
    开源蓝牙协议栈 BTstack学习笔记
    无法从 repo.msys2.org : Operation too slow. Less than 1 bytes/sec transferred the last 10 seconds 获取文件
    KEIL生成预编译文件
    Duff's device
    Pyinstaller : unable to find Qt5Core.dll on PATH
    HCI 获取蓝牙厂商信息
  • 原文地址:https://www.cnblogs.com/wangshengjun/p/767A.html
Copyright © 2011-2022 走看看