209132026-01-11 10:40:35szjMunkákcpp17Részben helyes 56/8070ms2548 KiB
#include <bits/stdc++.h>

using namespace std;

int main()
{
    int n , m, i, a, b;
    cin >> n >> m;
    int value[n]={}, original[n]={}, bef[n]={}, veg[n]={};
    bool volt[n]={};
    for(i=0; i<m; i++)
    {
        cin >> a >> b;
        if(original[a-1]<b)
        {
            original[a-1]=b;
            veg[a-1]=i+1;
        }
    }
    value[0]=original[0];
    bef[0]=-1;
    volt[0]=1;
    if(value[0]>original[1])
    {
        value[1]=value[0];
        bef[1]=0;
    }
    else
    {
       value[1]=original[1];
       bef[1]=-1;
       volt[1]=1;
    }
    for(i=2; i<n; i++)
    {
        if(original[i]+value[i-2]>value[i-1])
        {
            value[i]=original[i]+value[i-2];
            if(volt[i-2])bef[i]=i-2;
            else bef[i]=bef[i-2];
            volt[i]=1;
        }
        else
        {
            value[i]=value[i-1];
            bef[i]=i-1;
        }
    }
    cout << value[n-1] << " ";
    stack<int> st;
    a=n-1;
    while(a!=-1)
    {
        if(volt[a])st.push(a);
        a=bef[a];
    }
    cout << st.size() << endl;
    while(!st.empty())
    {
        cout << veg[st.top()] << " ";
        st.pop();
    }

}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva1ms316 KiB
2Elfogadva56ms748 KiB
subtask210/10
3Elfogadva1ms316 KiB
4Elfogadva1ms512 KiB
5Elfogadva1ms316 KiB
6Elfogadva2ms316 KiB
7Elfogadva1ms316 KiB
subtask36/10
8Elfogadva1ms316 KiB
9Részben helyes1ms316 KiB
10Elfogadva1ms316 KiB
11Részben helyes1ms316 KiB
12Részben helyes1ms320 KiB
subtask410/10
13Elfogadva1ms316 KiB
14Elfogadva1ms512 KiB
15Elfogadva1ms316 KiB
16Elfogadva2ms316 KiB
17Elfogadva1ms316 KiB
18Elfogadva1ms316 KiB
19Elfogadva1ms508 KiB
20Elfogadva1ms316 KiB
21Elfogadva1ms316 KiB
22Elfogadva1ms316 KiB
subtask56/10
23Elfogadva1ms316 KiB
24Részben helyes1ms316 KiB
25Elfogadva1ms316 KiB
26Részben helyes1ms316 KiB
27Részben helyes1ms320 KiB
28Részben helyes1ms316 KiB
29Részben helyes1ms332 KiB
30Részben helyes1ms316 KiB
31Részben helyes1ms316 KiB
32Részben helyes1ms564 KiB
subtask66/10
33Elfogadva1ms316 KiB
34Elfogadva1ms512 KiB
35Elfogadva1ms316 KiB
36Elfogadva2ms316 KiB
37Elfogadva1ms316 KiB
38Elfogadva1ms316 KiB
39Részben helyes1ms316 KiB
40Elfogadva1ms316 KiB
41Részben helyes1ms316 KiB
42Részben helyes1ms320 KiB
43Elfogadva1ms316 KiB
44Elfogadva1ms508 KiB
45Elfogadva1ms316 KiB
46Elfogadva1ms316 KiB
47Elfogadva1ms316 KiB
48Részben helyes1ms316 KiB
49Részben helyes1ms332 KiB
50Részben helyes1ms316 KiB
51Részben helyes1ms316 KiB
52Részben helyes1ms564 KiB
53Részben helyes1ms564 KiB
54Részben helyes1ms564 KiB
55Részben helyes1ms756 KiB
56Részben helyes1ms564 KiB
57Részben helyes1ms564 KiB
subtask76/10
58Elfogadva1ms316 KiB
59Elfogadva1ms512 KiB
60Elfogadva1ms316 KiB
61Elfogadva2ms316 KiB
62Elfogadva1ms316 KiB
63Elfogadva1ms316 KiB
64Részben helyes1ms316 KiB
65Elfogadva1ms316 KiB
66Részben helyes1ms316 KiB
67Részben helyes1ms320 KiB
68Elfogadva1ms316 KiB
69Elfogadva1ms508 KiB
70Elfogadva1ms316 KiB
71Elfogadva1ms316 KiB
72Elfogadva1ms316 KiB
73Részben helyes1ms316 KiB
74Részben helyes1ms332 KiB
75Részben helyes1ms316 KiB
76Részben helyes1ms316 KiB
77Részben helyes1ms564 KiB
78Részben helyes1ms564 KiB
79Részben helyes1ms564 KiB
80Részben helyes1ms756 KiB
81Részben helyes1ms564 KiB
82Részben helyes1ms564 KiB
83Elfogadva34ms1232 KiB
84Részben helyes35ms1224 KiB
85Elfogadva34ms1232 KiB
86Elfogadva35ms1228 KiB
87Elfogadva35ms1348 KiB
subtask812/20
88Elfogadva1ms316 KiB
89Elfogadva1ms512 KiB
90Elfogadva1ms316 KiB
91Elfogadva2ms316 KiB
92Elfogadva1ms316 KiB
93Elfogadva1ms316 KiB
94Részben helyes1ms316 KiB
95Elfogadva1ms316 KiB
96Részben helyes1ms316 KiB
97Részben helyes1ms320 KiB
98Elfogadva1ms316 KiB
99Elfogadva1ms508 KiB
100Elfogadva1ms316 KiB
101Elfogadva1ms316 KiB
102Elfogadva1ms316 KiB
103Részben helyes1ms316 KiB
104Részben helyes1ms332 KiB
105Részben helyes1ms316 KiB
106Részben helyes1ms316 KiB
107Részben helyes1ms564 KiB
108Részben helyes1ms564 KiB
109Részben helyes1ms564 KiB
110Részben helyes1ms756 KiB
111Részben helyes1ms564 KiB
112Részben helyes1ms564 KiB
113Elfogadva34ms1232 KiB
114Részben helyes35ms1224 KiB
115Elfogadva34ms1232 KiB
116Elfogadva35ms1228 KiB
117Elfogadva35ms1348 KiB
118Elfogadva68ms2356 KiB
119Elfogadva68ms2356 KiB
120Részben helyes68ms2356 KiB
121Részben helyes70ms2320 KiB
122Elfogadva70ms2356 KiB
123Elfogadva68ms2364 KiB
124Részben helyes68ms2356 KiB
125Elfogadva70ms2548 KiB
126Elfogadva68ms2312 KiB
127Elfogadva68ms2356 KiB