171992025-06-03 11:30:54ercseferencSzimmetrikus sorozatcpp17Hibás válasz 0/100586ms131072 KiB
#include <bits/stdc++.h>
using namespace std;
struct par{int a,b;};
struct adatszam{int ert,ind,csop;};
bool has1(adatszam m, adatszam n){
    return m.ert<n.ert;}
bool has2(adatszam m, adatszam n){
    return m.ind<n.ind;}
int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(0); cout.tie(0); vector<par>b;
    int n,x,y; cin>>n;
    vector<adatszam>a(n);
    for(int i=0; i<n; i++){cin>>a[i].ert; a[i].ind=i;}
    vector<vector<int> >csoportok; int t=0;
    sort(a.begin(),a.end(), has1);
    vector<int>ures; csoportok.push_back(ures);
   for(int i=0; i<n; i++){
        csoportok[t].push_back(a[i].ind);
        a[i].csop=t;
        if(a[i].ert!=a[i+1].ert && i!=n-1){t++;
        csoportok.push_back(ures);}}
    /*for(int i=0; i<csoportok.size(); i++){
        for(int j=0; j<csoportok[i].size(); j++)cout<<csoportok[i][j]<<" ";
        cout<<endl;}*/
    sort(a.begin(),a.end(), has2);
    //for(int i=0; i<n; i++)cout<<a[i].ert<<" ";
    for(int i=0; i<n/2; i++){
        if(a[i].ert!=a[n-i-1].ert){
            if(a[i].ert>a[n-i-1].ert){
                x=n-i-1, y=i;}
            else {x=i; y=n-i-1;}
            par q; q.a=a[y].ert; q.b=a[x].ert; b.push_back(q);
            int v=csoportok[a[y].csop].size();
            for(int j=0; j<v; j++){
                csoportok[a[x].csop].push_back(csoportok[a[y].csop][j]);
                a[csoportok[a[y].csop][j]].ert=a[x].ert;
                a[csoportok[a[y].csop][j]].csop=a[x].csop;}}}
    cout<<b.size()<<endl;
    for(int i=0; i<b.size(); i++)cout<<b[i].a<<" "<<b[i].b<<endl;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva1ms316 KiB
2Hibás válasz122ms6632 KiB
subtask20/9
3Hibás válasz2ms748 KiB
4Elfogadva2ms316 KiB
5Hibás válasz2ms316 KiB
6Elfogadva2ms316 KiB
7Hibás válasz2ms564 KiB
subtask30/14
8Hibás válasz1ms512 KiB
9Elfogadva1ms316 KiB
10Hibás válasz1ms316 KiB
11Elfogadva1ms316 KiB
12Hibás válasz1ms344 KiB
13Elfogadva1ms316 KiB
subtask40/25
14Hibás válasz1ms316 KiB
15Hibás válasz2ms316 KiB
16Hibás válasz4ms748 KiB
17Hibás válasz4ms648 KiB
18Hibás válasz4ms564 KiB
19Hibás válasz9ms3272 KiB
20Hibás válasz18ms6628 KiB
21Elfogadva2ms500 KiB
subtask50/22
22Hibás válasz217ms10716 KiB
23Futási hiba586ms131072 KiB
24Hibás válasz268ms11228 KiB
25Hibás válasz226ms10720 KiB
26Hibás válasz211ms10888 KiB
27Futási hiba573ms131072 KiB
28Hibás válasz254ms11260 KiB
29Hibás válasz219ms10852 KiB
30Hibás válasz207ms10720 KiB
31Futási hiba541ms131072 KiB
32Hibás válasz252ms11232 KiB
33Hibás válasz224ms10884 KiB
34Hibás válasz200ms10720 KiB
35Hibás válasz500ms80004 KiB
36Hibás válasz248ms11232 KiB
37Hibás válasz221ms10720 KiB
subtask60/30
38Elfogadva1ms316 KiB
39Hibás válasz125ms6632 KiB
40Hibás válasz2ms748 KiB
41Elfogadva2ms316 KiB
42Hibás válasz2ms316 KiB
43Elfogadva2ms316 KiB
44Hibás válasz2ms564 KiB
45Hibás válasz1ms512 KiB
46Elfogadva1ms316 KiB
47Hibás válasz1ms316 KiB
48Elfogadva1ms316 KiB
49Hibás válasz1ms344 KiB
50Elfogadva1ms316 KiB
51Hibás válasz1ms316 KiB
52Hibás válasz2ms316 KiB
53Hibás válasz4ms748 KiB
54Hibás válasz4ms648 KiB
55Hibás válasz4ms564 KiB
56Hibás válasz9ms3272 KiB
57Hibás válasz18ms6628 KiB
58Elfogadva2ms500 KiB
59Hibás válasz217ms10716 KiB
60Futási hiba586ms131072 KiB
61Hibás válasz268ms11228 KiB
62Hibás válasz226ms10720 KiB
63Hibás válasz211ms10888 KiB
64Futási hiba573ms131072 KiB
65Hibás válasz254ms11260 KiB
66Hibás válasz219ms10852 KiB
67Hibás válasz207ms10720 KiB
68Futási hiba541ms131072 KiB
69Hibás válasz252ms11232 KiB
70Hibás válasz224ms10884 KiB
71Hibás válasz200ms10720 KiB
72Hibás válasz500ms80004 KiB
73Hibás válasz248ms11232 KiB
74Hibás válasz221ms10720 KiB
75Hibás válasz286ms13272 KiB
76Futási hiba418ms131072 KiB
77Hibás válasz93ms6192 KiB
78Futási hiba435ms131072 KiB
79Futási hiba370ms131072 KiB
80Elfogadva93ms7912 KiB
81Elfogadva94ms7912 KiB
82Elfogadva94ms8104 KiB
83Hibás válasz286ms14200 KiB
84Hibás válasz97ms6060 KiB
85Futási hiba441ms131072 KiB
86Elfogadva101ms8160 KiB
87Elfogadva100ms8160 KiB
88Elfogadva101ms8156 KiB
89Elfogadva101ms8160 KiB