题意:Tanya爬楼梯,每爬一层楼就会说出这一层楼梯的编号;例如她爬上两层楼,其中第一个楼包含3个楼梯3,第二个包含44个,她说出的数字为1 ,2 ,3 ,1 ,2 ,3 ,4,输出Tanya爬了几层楼,每一层楼有多少楼梯。
题解:用Vector存储每一层楼的楼梯数;
#include <bits/stdc++.h>
using namespace std;
vector <int> v;
int main()
{
int n, num, last = -1;
cin >> n;
for (int i = 0; i < n; i++){
cin >> num;
if(num == 1){
if(last != -1){
v.push_back(i - last);
}
last = i;
}
}
v.push_back(n - last);
cout << v.size() << endl;
for (int x : v)
cout << x << ' ';
}