比赛 20120217 评测结果 AWWWWWWWWW
题目名称 编码问题 最终得分 10
用户昵称 苏轼 运行时间 0.000 s
代码语言 C++ 内存使用 0.00 MiB
提交时间 2012-02-17 21:52:59
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<vector>
using namespace std;
int m,n;
void tui();
void qiu();
int main()
{
	freopen ("code.in","r",stdin);
	freopen ("code.out","w",stdout);
	cin>>m>>n;
	for (int i=0;i<m;i++)
	{
		int a;
		cin>>a;
		if (a==1)
		{
			qiu();
		}
		else
		{
			tui();
		}
	}
	return 0;
}
void qiu()
{
	vector<int>q;
	for (int i=0;i<n;i++)
	{
		int b;
		cin>>b;
		q.push_back(b);
	}
	cout<<0<<' ';
	for (int i=1;i<n;i++)
	{
		int temp=0;
		for (int j=0;j<i;j++)
		{
			if (q[j]<q[i])
			{
				temp++;
			}
		}
		cout<<temp<<' ';
	}
	cout<<endl;
}
void tui()
{
	vector<int>q;
	for (int i=0;i<n;i++)
	{
		int b;
		cin>>b;
		q.push_back(b);
	}
	bool used[101]={0};
	int w[101];
	for (int i=n-1;i>=0;i--)
	{
		int c=0;
		if (q[i]==0)
			c=-1;
		for (int j=0;j<n;j++)
		{
			if (used[j]!=1)
			{
				c++;
			}
			if (c==q[i])
			{
				if (q[i]==0)
				{
					w[i]=j;
					used[j]=1;
					break;
				}
				w[i]=j+1;
				used[j+1]=1;
				break;
			}
		}
	}
	for (int i=0;i<n;i++)
	{
		cout<<w[i]<<' ';
	}
	cout<<endl;
}