CF 136A present

小Petya喜欢礼物,特别是看别人互赠礼物。在新年派对上,他的朋友们进行了一次礼物交换游戏,每位朋友都给另一位特定的朋友送了一份礼物。通过一系列数字输入,我们需要确定每位朋友收到礼物的具体来源。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Little Petya very much likes gifts. Recently he has received a new laptop as a New Year gift from his mother. He immediately decided to give it to somebody else as what can be more pleasant than giving somebody gifts. And on this occasion he organized a New Year party at his place and invited n his friends there.

If there's one thing Petya likes more that receiving gifts, that's watching others giving gifts to somebody else. Thus, he safely hid the laptop until the next New Year and made up his mind to watch his friends exchanging gifts while he does not participate in the process. He numbered all his friends with integers from 1 to n. Petya remembered that a friend number i gave a gift to a friend number pi. He also remembered that each of his friends received exactly one gift.

Now Petya wants to know for each friend i the number of a friend who has given him a gift.

Input

The first line contains one integer n (1 ≤ n ≤ 100) — the quantity of friends Petya invited to the party. The second line contains n space-separated integers: the i-th number is pi — the number of a friend who gave a gift to friend number i. It is guaranteed that each friend received exactly one gift. It is possible that some friends do not share Petya's ideas of giving gifts to somebody else. Those friends gave the gifts to themselves.

Output

Print n space-separated integers: the i-th number should equal the number of the friend who gave a gift to friend number i.

Examples
input
4
2 3 4 1
output
4 1 2 3
input
3
1 3 2
output
1 3 2
input
2
1 2
output
1 2

题目大意:输入n代表n个数字,输入n个数字,输出排序后的位置;

根本不懂思路,看了翻译还不会,其实排序后的数字是知道的 for循环1~n就是排序了的。

输出i位置上的值就是位置了;

AC代码:

#include <bits/stdc++.h>
using namespace std ;
int dp[500];
int main()
{
    memset(dp,0,sizeof(dp));
    int n ;
    cin>>n;
    for(int i = 1 ; i <= n ; i++)
    {
        int k ;
        cin>>k;
        dp[k] =  i ;
    }
    for(int i = 1 ; i<=n;i++)
    {
        printf("%d ",dp[i]);
    }
    return 0 ;
}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Kelisita

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值