Uva 101(vector的使用)木块问题
//vctor的使用,用函数封装一个操作还是蛮舒服的
#include<cstdio>
#include<iostream>
#include<vector>
#include<map>
using namespace std;
vector<int> a[30];
char s[10];
int n,u,v;
void find(int num,int& x,int& h)
{
//找到num的位置
for(int i=0; i<n; ++i)
for(int j=0; j<a[i].size(); ++j)
if(a[i][j]==num)
{
x=i,h=j;
return;
}
}
void clear_above(int x,int h)
{
//将x,h以上的放回原位
for(int i=h+1; i<a[x].size(); ++i)
a[a[x][i]].push_back(a[x][i]);
a[x].resize(h+1);//相当于把h+1以上的全都去了
}
void push(int y,int x,int h)
{
//将x,h及以上的全都放到y上
for(int i=h; i<
还没有评论,来说两句吧...