top1编程
← 返回题目
题解

【入门】火车编组

1 条题解

  • 0
    @ 2026-7-28 23:03:58
    #include <bits/stdc++.h>
    using namespace std;
    stack<int> st;  // 栈存车厢编号,替换原来char栈,只用stack容器
    int n,x;
    int a[105];
    int main(){
    	cin>>n;
    	for(int i=0;i<n;i++){
    		cin>>x;
    		a[i]=x;//0~n-1 存目标车厢顺序
    	}
    	int t=0;//记录下一个要进栈的车厢号
    	for(int i=0;i<n;i++){
    		while(t<a[i]){//还没到需要出的车厢,持续入栈
    			t++;
    			st.push(t);//车厢进栈
    			cout<<'A';
    		}
    		st.pop();//车厢出栈
    		cout<<'B';
    	}
    	return 0;
    }
    
    • 1