223622026-01-14 22:06:58helloworldMunkákcpp17Hibás válasz 12/8068ms2612 KiB
#include <iostream>
#include <fstream>
#include <algorithm>
#include <vector>
using namespace std;

int N,M;
int values[200000]={0};

void beolvas(){
    //ifstream f("munkak_2025");
    //f>>N>>M;

    cin>>N>>M;

    for(int i=1; i<=M; i++){
        int a,b=0;
        cin>>a>>b;
        if(values[a]<b){
            values[a]=b;
        }
    }
}




int main()
{
    beolvas();

    for(int i=1; i<=N; i++){
        if(values[i]!=0){
            //cout<<i<<"-->"<<values[i]<<"\n";
        }
    }


    int maximum[M]={0};
    maximum[1]=values[1];
    maximum[2]=values[2];
    if(N >= 2) maximum[2] = max(values[1], values[2]);
    for(int i=3; i<=N; i++){
        maximum[i]=max(maximum[i-1], (maximum[i-2]+values[i]));
    }

    //cout<<"\n\n";
    for(int i=1; i<=N; i++){
        if(maximum[i]!=0){
            //cout<<i<<"-->"<<maximum[i]<<"\n";
        }
    }


    vector<int> ans;
    int i = N;
    while(i >= 1){
        if(i==1){
            if(maximum[1]>0) ans.push_back(1);
            break;
        }
        if(maximum[i]==maximum[i-1]){
            i--;
        } else {
            ans.push_back(i); // kiválasztjuk
            i -= 2;
        }
    }
    reverse(ans.begin(), ans.end());
    int x=ans.size();

    cout<<maximum[N]<<" "<<x<<"\n";
    for(int i=0; i<x-1; i++){
        cout<<ans[i]+1<<" ";
    }

    cout<<ans[x-1];
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Hibás válasz1ms316 KiB
2Részben helyes56ms820 KiB
subtask26/10
3Részben helyes2ms316 KiB
4Részben helyes2ms316 KiB
5Részben helyes2ms316 KiB
6Részben helyes2ms316 KiB
7Részben helyes1ms316 KiB
subtask30/10
8Hibás válasz1ms316 KiB
9Részben helyes1ms316 KiB
10Részben helyes1ms508 KiB
11Futási hiba1ms412 KiB
12Futási hiba1ms412 KiB
subtask46/10
13Részben helyes2ms316 KiB
14Részben helyes2ms316 KiB
15Részben helyes2ms316 KiB
16Részben helyes2ms316 KiB
17Részben helyes1ms316 KiB
18Részben helyes1ms512 KiB
19Részben helyes1ms316 KiB
20Részben helyes1ms316 KiB
21Részben helyes1ms316 KiB
22Részben helyes1ms316 KiB
subtask50/10
23Hibás válasz1ms316 KiB
24Részben helyes1ms316 KiB
25Részben helyes1ms508 KiB
26Futási hiba1ms412 KiB
27Futási hiba1ms412 KiB
28Futási hiba1ms316 KiB
29Futási hiba1ms564 KiB
30Futási hiba1ms316 KiB
31Futási hiba1ms316 KiB
32Futási hiba1ms508 KiB
subtask60/10
33Részben helyes2ms316 KiB
34Részben helyes2ms316 KiB
35Részben helyes2ms316 KiB
36Részben helyes2ms316 KiB
37Részben helyes1ms316 KiB
38Hibás válasz1ms316 KiB
39Részben helyes1ms316 KiB
40Részben helyes1ms508 KiB
41Futási hiba1ms412 KiB
42Futási hiba1ms412 KiB
43Részben helyes1ms512 KiB
44Részben helyes1ms316 KiB
45Részben helyes1ms316 KiB
46Részben helyes1ms316 KiB
47Részben helyes1ms316 KiB
48Futási hiba1ms316 KiB
49Futási hiba1ms564 KiB
50Futási hiba1ms316 KiB
51Futási hiba1ms316 KiB
52Futási hiba1ms508 KiB
53Futási hiba1ms316 KiB
54Futási hiba1ms316 KiB
55Futási hiba1ms316 KiB
56Futási hiba1ms316 KiB
57Futási hiba2ms316 KiB
subtask70/10
58Részben helyes2ms316 KiB
59Részben helyes2ms316 KiB
60Részben helyes2ms316 KiB
61Részben helyes2ms316 KiB
62Részben helyes1ms316 KiB
63Hibás válasz1ms316 KiB
64Részben helyes1ms316 KiB
65Részben helyes1ms508 KiB
66Futási hiba1ms412 KiB
67Futási hiba1ms412 KiB
68Részben helyes1ms512 KiB
69Részben helyes1ms316 KiB
70Részben helyes1ms316 KiB
71Részben helyes1ms316 KiB
72Részben helyes1ms316 KiB
73Futási hiba1ms316 KiB
74Futási hiba1ms564 KiB
75Futási hiba1ms316 KiB
76Futási hiba1ms316 KiB
77Futási hiba1ms508 KiB
78Futási hiba1ms316 KiB
79Futási hiba1ms316 KiB
80Futási hiba1ms316 KiB
81Futási hiba1ms316 KiB
82Futási hiba2ms316 KiB
83Részben helyes32ms1268 KiB
84Részben helyes34ms1108 KiB
85Részben helyes34ms1076 KiB
86Részben helyes34ms1076 KiB
87Részben helyes34ms1260 KiB
subtask80/20
88Részben helyes2ms316 KiB
89Részben helyes2ms316 KiB
90Részben helyes2ms316 KiB
91Részben helyes2ms316 KiB
92Részben helyes1ms316 KiB
93Hibás válasz1ms316 KiB
94Részben helyes1ms316 KiB
95Részben helyes1ms508 KiB
96Futási hiba1ms412 KiB
97Futási hiba1ms412 KiB
98Részben helyes1ms512 KiB
99Részben helyes1ms316 KiB
100Részben helyes1ms316 KiB
101Részben helyes1ms316 KiB
102Részben helyes1ms316 KiB
103Futási hiba1ms316 KiB
104Futási hiba1ms564 KiB
105Futási hiba1ms316 KiB
106Futási hiba1ms316 KiB
107Futási hiba1ms508 KiB
108Futási hiba1ms316 KiB
109Futási hiba1ms316 KiB
110Futási hiba1ms316 KiB
111Futási hiba1ms316 KiB
112Futási hiba2ms316 KiB
113Részben helyes32ms1268 KiB
114Részben helyes34ms1108 KiB
115Részben helyes34ms1076 KiB
116Részben helyes34ms1076 KiB
117Részben helyes34ms1260 KiB
118Részben helyes65ms1476 KiB
119Részben helyes68ms1456 KiB
120Részben helyes68ms2612 KiB
121Részben helyes67ms1456 KiB
122Részben helyes68ms1700 KiB
123Részben helyes65ms1456 KiB
124Részben helyes68ms1688 KiB
125Részben helyes68ms1560 KiB
126Részben helyes68ms1772 KiB
127Részben helyes68ms1456 KiB