问题标题: 酷町堂:奇妙电台:第三章

1
1
已解决
周明轩
周明轩
资深光能
资深光能

主持人:“哈喽大家好,欢迎来到奇妙电台。我是主持人,这期节目叫《5129   酷町猫爬楼梯》,欢迎我们的嘉宾:5129!”

5129:“大家好,我是5129。我是一道4级题。”

主持人:“请5129先生介绍一下自己。”

5129:“好。”

介绍:

题目描述 Description

酷町猫爬上多层建筑物内的楼梯。酷町猫每次爬楼梯时,都会开始从1到该楼梯的步数进行计数。 他大声说每个数字。 例如,如果她爬两个楼梯,其中第一个楼梯包含3个台阶,而第二个楼梯包含4个台阶,则他会念出1,2,3,1,2,3,4的数字。

给出了酷町猫发音的所有数字。 她爬了几段楼梯? 另外,输出每个楼梯的步数。

给定的序列将是酷町猫在攀登一个或多个楼梯时可能已经发出的有效序列。

输入描述 Input Description

输入2行
第一行输入一个正整数n (1<=n<=1000)酷町猫发音的总数
第二行包含整数a1,a2,a3,…,an (1<=ai<=1000)
表示酷町猫在爬楼梯时发音的所有数字,从第一个到最后一个发音的顺序。 每经过x步的楼梯,她将按该顺序念出数字1,2,…,x。
给定的序列将是酷町猫在爬一个或多个楼梯时可能已经发出的有效序列

输出描述 Output Description

输出2行
在第一行中,输出酷町猫爬上的楼梯数。 在第二行中,输出他所爬的每个楼梯的步数。 按正确的楼梯顺序写下数字。

样例输入 Sample Input

样例输入1: 7 1 2 3 1 2 3 4 样例输入2: 5 1 2 3 4 5

样例输出 Sample Output

样例输出1: 2 3 4 样例输出2: 1 5

数据范围及提示 Data Size & Hint

题意:每走一个台阶就会报数,每走新的一层就再从1开始报,给出报的顺序,求一共走了几层,每层有多少个台阶

主持人:“谢谢5129先生的分享。我冒味的说一声,如果有人敢给一点思路,你会给他多少酷町豆?”

5129:“我会给20个。”

主持人:“好,谢谢5129先生,我们下期再见。”


0
已采纳
王泽宇
王泽宇
初级光能
初级光能
for(int i=2;i<=n;i++){
        if(a[i]==1){
            b[++cnt]=a[i-1];
        }
        if(i==n){
            b[++cnt]=a[i];
        }
    } 

 

0
0
0
康曦
康曦
中级光能
中级光能

先找酷町猫总共走了多少层,if(a[i]==1) 楼层++;

再找每层楼有多个台阶,这里需要多一步:a[n+1]=1;再判断:if(a[i+1]==1) cout<<a[i]<<" ";

望采纳

 

我要回答