一:排序-堆棧基礎
阿新 • • 發佈:2017-12-29
輸入 class post for urn sca 入棧 std spa
問題 : 堆棧基礎
題目描述
輸入n個數據(n<=10000),在這組數據中:0表示入棧,1表示出棧(註意:入棧的數據是0後面的數據。如:0 3 0 5是將3 和5入棧)。以-1為結尾,最後輸出堆棧裏剩下的數據。
輸入
一組數,以-1結尾
輸出
堆棧裏剩下的數
樣例輸入
0 1 0 2 0 3 0 8 1 -1
樣例輸出
3 2 1
#include<stdio.h> int main(){ int n; int a[10000]; int b[10000]; int i=0,l,p=0,j; while(1){ scanf("%d",&n); if(n==-1){ break; }else a[i++]=n; } for(j=0;j<i;j++){ if(a[j]==0){ b[p++]=a[j+1]; j++; }else if(a[j]==1){ p--; } } for(j=p-1;j>=0;j--) printf("%d ",b[j]); return 0; }
一:排序-堆棧基礎