#42091: 不是哥們,我在自己的編譯器可以輸出,為啥在這裡不可以


103040@tcsh.tn.edu.tw (11戴靖宸-小戴)

學校 : 不指定學校
編號 : 252180
來源 : [203.204.105.121]
最後登入時間 :
2025-07-15 10:25:31

請路過的大老幫幫我

#include <bits/stdc++.h>
using namespace std;
int in;
vector<int> a_r;
vector<pair<int, string>> arr;
int main(){
    a_r.resize(0);
    arr.resize(0);
     cin.ignore(1, ' ');
     int T;cin>>T;
     for(int i=0;i<T;i++){
        cin.ignore(1, ' ');
        cin.ignore();
        cin.ignore(1, ' ');
        int j = 0;
        while(cin>>in){a_r.push_back(in);j++;if(getchar()=='\n'){break;}}
        cin.ignore();
        cin.ignore(0, ' ');
        arr.resize(a_r.size());
        for(int i=0;i<a_r.size();i++){
            cin>>arr[i].second;
            arr[i].first = a_r[i]-1;
        }
        sort(arr.begin(), arr.end(), less<pair<int, string>>());
        cout<<endl;
        for(int i=0;i<a_r.size();i++){
            cout<<arr[i].second<<endl;
        }
     }
     return 0;
}

#44385: Re: 不是哥們,我在自己的編譯器可以輸出,為啥在這裡不可以


cges30901 (cges30901)

學校 : 不指定學校
編號 : 30877
來源 : [39.12.66.21]
最後登入時間 :
2025-04-20 17:19:22

1. cin.ignore()通通刪掉,不知道你為什麼要寫那麼多

2. 每個case要先把a_r和arr清空