AT—abc142_c [ABC142C] Go to School 题解

题目传送门

更好的阅读体验?

思路:

  • 教室里一开始没有人。

  • 当一个人进去时,他数出教室里现在有 \(m\) 个人,说明在这个人进去之前教室里已经进来了 \(m-1\) 个人,而这个人也就是第 \(m\) 个进教室的,可以直接在读入的时候记录答案。

  • AT 的题最后要有换行

代码(最优解第一页):

#include<cstdio>
int read()//快读 
{
	int x=0,c=getchar(),f=0;
	for(;c<'0'||c>'9';f=c=='-',c=getchar());
	for(;c>='0'&&c<='9';c=getchar())
	x=(x<<1)+(x<<3)+(c-'0');return f?-x:x;
}
void write(int x)// 快写(没有负数)
{
	if(x>9)  write(x/10);
	putchar(x%10+'0');
}
void _write_(int x)//写一个数字,后有空格 
{
	write(x);
	putchar(' ');
}
int main()
{
	int a[100005]={},n=read();
	for(int i=1;i<=n;i++)  a[read()]=i;
	for(int i=1;i<=n;i++)  _write_(a[i]);
	putchar('\n');//AT 的题需要换行
	return 0;
}
posted @ 2025-02-08 16:43  Wy_x  阅读(22)  评论(0)    收藏  举报