10 条题解

  • 6
    @ 2022-8-10 22:11:08

    感觉两个数组对照就可以

    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
        long long int n;
        cin>>n;
        int a[100005],b[100005];//a数组存储男生舞伴,b数组存储舞伴对应的男生
        for(int i=1;i<=n;i++)
        {
            cin>>a[i];//读入男生的对应舞伴的编号
            b[a[i]]=i;//存储该舞伴对应的男生
        }
        for(int i=1;i<=n;i++)
        {
            cout<<b[i]<<" ";//按顺序输出即可
        }
        return 0;
    }
    

    本人不会什么高端的做法~~~

    • @ 2022-8-17 15:16:00

      方法跟你一模一样~

    • @ 2022-9-12 19:42:03

      好家伙,刚想到这个方法就看见了你

    • @ 2022-9-14 19:48:44

      一样了哎

    • @ 2022-11-29 20:54:15

      好家伙,刚想到这个方法就看见了······

    • @ 2022-12-13 20:46:14

      你干嘛!嗨嗨呦

    • @ 2023-6-30 19:43:46

      为什么我第一次也想到了这种方法?好像这个方法是最简单的啊。

    • @ 2023-8-27 21:29:34

      感觉数组a有点多余了啊,因为在整个代码中除了a[i]就再没用到过数组a了,我觉得可以用一个变量x代替a[i]

    • @ 2023-8-29 8:08:21

      👍

  • 4
    @ 2022-9-6 21:30:07

    //极简解法,懒人必备

    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
        ios::sync_with_stdio(false);
        cin.tie(0);
        cout.tie(0);
    
        int n,a[100005],x;
        cin >> n;
        for(int i = 1;i<=n;i++)
        {
            cin >> x;
            a[x]=i;
        }
        for(int i = 1;i<=n;i++)
        {
            cout<<a[i]<<" ";
        }
    }
    
    </span>
    • 2
      @ 2022-8-9 18:40:46

      随随便便写个结构体就ojbk

      #include<bits/stdc++.h>
      using namespace std;
      int n;
      struct Cp{
          int women,man; // 每队组合都有一个男人和女人
      }cp[100005]; // 最多有1e5对组合
      bool cmp(Cp a,Cp b){
          return a.women<b.women; // 把女人从小到大排列就得到了男人的顺序
      }
      int main(){
          ios::sync_with_stdio(false); // 输入输出加速
          cin.tie(0);
          cout.tie(0);
          cin>>n;
          for(int i=1;i<=n;i++){ // 读入每队的女士
              cin>>cp[i].women;
              cp[i].man=i; // 因为是按照从1到n的男士顺序读入的所以本队的男士直接赋值为i就行
          }
          sort(cp+1,cp+n+1,cmp);
          for(int i=1;i<=n;i++){
              cout<<cp[i].man<<" ";
          }
          return 0;
      }
      
      • 2
        @ 2022-7-3 16:53:13

        这道题可以用单向链表解决

        #include <bits/stdc++.h>//用万能头是个好习惯
        using namespace std;
        
        int n , x[1000001];
        
        struct Block{//用结构体定义一个链表
        	int val , nxt;
        };
        
        Block node[1000001];
        int main()
        {
        	cin >> n;
        	for(int i = 1;i <= n;i++)
        	{
        		cin >> x[i];
        		node[x[i]].val = i;
        		node[x[i]].nxt = i + 1;
        	}
        	for(int i = 1;i <= n;i++)
        	{
        		cout << node[i].val << " ";
        	}
        	return 0;
        }
        

        希望我的题解对大家有帮助!

        • 1
          @ 2023-10-29 11:29:35

          简单

          #include <bits/stdc++.h>
          #define ll long long
          using namespace std;
          const int MAXN = 1e6;
          ll a[MAXN], n;
          int main()
          {
              cin >> n;
              for (int i = 1; i <= n; i++)
              {
                  int x;
                  cin >> x;
                  a[x] = i;
              }
              for (int i = 1; i <= n; i++)
                  cout << a[i] << " ";
              return 0;
          }
          
          • 1
            @ 2023-1-9 19:08:19

            好家伙我第一次在核桃写题解👀️


            直接上代码先:

            #include <bits/stdc++.h> //万能头
            #define main mian //无谓的抵抗
            using namespace std;
            int main(){
                int a[100000],n,x; //看数据取值确定数组范围
                scanf("%d",&n);
                for(int i= 1;i <= n;i++){ //i表示男生编号,配合输入分别为1,2,3 … n
                    scanf("%d",&x);
                    a[x-1] = i; //数组内表示女生对应编号,下标从0开始,故a[x-1]
                }
                for(int i = 0;i < n;i++){ //i代替下标输出数组
                    printf("%d ",a[i]);
                }
                return 0; //好习惯
            }
            

            就循环里套数组,难度3,应该还好 不过我也不敢说我的最好,毕竟看到还有很多大佬的代码,也学学


            不懂嗷!👀️

            • 0
              @ 2023-8-27 21:32:06
              ............
              int n, x;
              cin >> n;
              int g[n];
              for (int i = 0;i < n;i++){
              cin >> x;
              g[x] = i+1;
              }
              for (int i = 1;i <= n;i++){
              cout << g[i] << " ";
              }
              ............
              

              看了一圈发现好像只有我是根据n决定数组的大小的吗...

              • 0
                @ 2022-11-1 18:58:55
                #include <iostream>
                using namespace std;
                int main()
                {
                     int n;
                cin >> n;
                int a[100005],b[100005];
                for (int i=1;i<=n;i++
                {
                       cin >> a[i];
                       b[a[i]]=i;
                }
                for (int i=1;i<=n;i++)
                {
                       cout  << b[i] <<" ";
                }
                return 0;
                }
                
                
                
                • -1
                  @ 2023-8-30 14:40:31

                  复制吧,反正随便!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

                  
                  

                  才怪!

                  #include <bits/stdc++.h>
                  using namespace std;
                  int main()
                  {
                      long long int n;
                      cin>>n;
                      int a[100005],b[100005];
                      for(int i=1;i<=n;i++)
                      {
                          cin>>a[i];
                          b[a[i]]=i;
                      }
                      for(int i=1;i<=n;i++)
                      {
                          cout<<b[i]<<" ";
                      }
                      return 0;
                  }
                  
                  • -3
                    @ 2022-4-24 16:43:34

                    写题解请注意

                    鼓励大家写题解,但注意题解格式。

                    题解一定要有思路解析或代码注释,能否让别人理解你的思路

                    也是你的能力的检验,不要只放无意义的代码给大家复制,那就失去了做题的初心。

                    给代码两端加上这个会舒服一些

                    ```cpp

                    你的代码

                    ```

                    </span>

                    这个点在键盘的左上角tab上面那个键,注意切换输入法

                    #include<iostream>
                    using namespace std;
                    int main()
                    {
                        int n;
                        cin>>n;//这是一个注释
                        return 0;
                    } 
                    

                    请注意严禁抄袭题解,写题解不要只放代码,需加上你的思路或代码注释。

                    抄袭题解一经发现直接取消成绩。

                    题解被删除的可能

                    1. 代码不符合格式规范
                    2. 没有思路讲解或者没有注释,
                    3. 无意义的题解

                    大家携手共同维护一个良好的编程环境,如果一经发现,多次作乱。可能会被管理员拉黑,请注意,一旦拉黑即失去登陆资格。

                    • 1

                    信息

                    ID
                    1250
                    时间
                    1000ms
                    内存
                    256MiB
                    难度
                    2
                    标签
                    递交数
                    226
                    已通过
                    145
                    上传者