195142025-12-12 08:48:12dfehervariFázis szinkronizáláscpp17Időlimit túllépés 50/1002.088s5032 KiB
#include <iostream>
#include <vector>

using namespace std;

struct F
{
    int fazis;
    int db;
};


int main(){
    //Adatok betöltése
    int N,M;
    cin>>N>>M;
    vector<int> adatok(N);
    for(int i=0;i<N;++i) cin>>adatok[i];

    //Az egyes fázisok számának tárolása
    vector<int> fazisok(M);
    for(int i=0;i<N;++i) fazisok[adatok[i]]+=1;

    //for(int i=0;i<M;++i) cout<<fazisok[i]<<";";

    vector<int> letezofazis;
    for(int i=0;i<M;++i) 
        if (fazisok[i]!=0) letezofazis.push_back(i);
    
    int lfdb;
    lfdb = letezofazis.size();

    for(int i=0;i<lfdb;++i) letezofazis.push_back(letezofazis[i]+M);
    //for(int i=0;i<2*lfdb;++i) cout<<letezofazis[i]<<"-";
    int i,hossz,minhossz=M,minhely=0;

    for(i=0;i<lfdb;++i){
        hossz = 0;
        for(int j=0;j<lfdb-1;++j){
            hossz=hossz+(letezofazis[i+j+1]-letezofazis[i+j]);
            
        }
        
        if (hossz<minhossz) {
            minhossz=hossz;
            minhely=i;
        }
        
    }
    cout<<minhossz<<"\n";
    //cout<<minhossz<<"-"<<minhely<<"\n";
    if(minhossz!=0) for(int i=0;i<minhossz;++i) cout<<(letezofazis[minhely]+i)%M<<" ";



        




    //cin.get();
    //cin.get();
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva1ms316 KiB
2Elfogadva1ms316 KiB
3Elfogadva1ms500 KiB
subtask210/10
4Elfogadva1ms500 KiB
5Elfogadva1ms316 KiB
6Elfogadva1ms316 KiB
7Elfogadva1ms336 KiB
subtask315/15
8Elfogadva1ms500 KiB
9Elfogadva1ms316 KiB
10Elfogadva1ms316 KiB
11Elfogadva1ms336 KiB
12Elfogadva1ms316 KiB
13Elfogadva1ms316 KiB
14Elfogadva1ms316 KiB
15Elfogadva1ms316 KiB
16Elfogadva1ms316 KiB
subtask425/25
17Elfogadva1ms500 KiB
18Elfogadva1ms316 KiB
19Elfogadva1ms316 KiB
20Elfogadva1ms336 KiB
21Elfogadva1ms316 KiB
22Elfogadva1ms316 KiB
23Elfogadva1ms316 KiB
24Elfogadva1ms316 KiB
25Elfogadva1ms316 KiB
26Elfogadva14ms1668 KiB
27Elfogadva82ms2480 KiB
28Elfogadva87ms2732 KiB
29Elfogadva35ms2100 KiB
30Elfogadva87ms2868 KiB
subtask50/20
31Elfogadva1ms500 KiB
32Elfogadva1ms316 KiB
33Elfogadva1ms316 KiB
34Elfogadva1ms336 KiB
35Elfogadva1ms316 KiB
36Elfogadva1ms316 KiB
37Elfogadva1ms316 KiB
38Elfogadva1ms316 KiB
39Elfogadva1ms316 KiB
40Időlimit túllépés2.088s4008 KiB
41Időlimit túllépés2.088s4012 KiB
42Elfogadva65ms1972 KiB
43Időlimit túllépés2.088s4004 KiB
44Elfogadva37ms2116 KiB
45Elfogadva17ms1332 KiB
46Elfogadva67ms2708 KiB
subtask60/30
47Elfogadva1ms500 KiB
48Elfogadva1ms316 KiB
49Elfogadva1ms316 KiB
50Elfogadva1ms336 KiB
51Elfogadva1ms316 KiB
52Elfogadva1ms316 KiB
53Elfogadva1ms316 KiB
54Elfogadva1ms316 KiB
55Elfogadva1ms316 KiB
56Elfogadva14ms1668 KiB
57Elfogadva82ms2480 KiB
58Elfogadva87ms2732 KiB
59Elfogadva35ms2100 KiB
60Elfogadva87ms2868 KiB
61Időlimit túllépés2.088s4008 KiB
62Időlimit túllépés2.088s4012 KiB
63Elfogadva65ms1972 KiB
64Időlimit túllépés2.088s4004 KiB
65Elfogadva37ms2116 KiB
66Elfogadva17ms1332 KiB
67Elfogadva67ms2708 KiB
68Elfogadva96ms4124 KiB
69Időlimit túllépés2.079s5032 KiB
70Elfogadva76ms3052 KiB
71Időlimit túllépés2.079s4264 KiB
72Időlimit túllépés2.085s2860 KiB