186142025-10-29 10:59:01KristófMunkákcpp17Időlimit túllépés 60/80685ms2232 KiB
#include <iostream>
#include <vector>

using namespace std;

struct dph
{
int take;
int bestp;
vector<int> taker;
vector<int> bestpr;
};

int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);
    int n,m;
    cin>>n>>m;
    vector<pair<int,int>> data(n+1,{0,0});
    int x,y;
    for(int i=1;i<=m;i++)
        {
        cin>>x>>y;
        if(y>data[x].first)
            {
            data[x].first=y;
            data[x].second=i;
            }
        }
    dph curr,prev;
    curr.take=data[1].first;
    curr.taker.push_back(data[1].second);
    curr.bestp=0;
    for(int i=2;i<=n;i++)
        {
        prev=curr;
        curr.take=prev.bestp+data[i].first;
        curr.taker=prev.bestpr;
        curr.taker.push_back(data[i].second);

        if(prev.bestp>prev.take)
            {
            curr.bestp=prev.bestp;
            curr.bestpr=prev.bestpr;
            }
        else
            {
            curr.bestp=prev.take;
            curr.bestpr=prev.taker;
            }
        }
    if(curr.bestp>curr.take)
        {
        cout<<curr.bestp<<" ";
        int cnt=0;
        for(auto x : curr.bestpr)
            {
            if(x>0)
                {
                cnt++;
                }
            }
        cout<<cnt<<endl;
        for(auto x : curr.bestpr)
            {
            if(x>0)
                {
                cout<<x<<" ";
                }
            }
        }
    else
        {
        cout<<curr.take<<" ";
        int cnt=0;
        for(auto x : curr.taker)
            {
            if(x>0)
                {
                cnt++;
                }
            }
        cout<<cnt<<endl;
        for(auto x : curr.taker)
            {
            if(x>0)
                {
                cout<<x<<" ";
                }
            }
        }
    
    //for(auto x : curr.taker)
       // {
       // cout<<x<<" ";
       // }
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva1ms316 KiB
2Elfogadva35ms564 KiB
subtask210/10
3Elfogadva1ms500 KiB
4Elfogadva1ms316 KiB
5Elfogadva1ms316 KiB
6Elfogadva1ms316 KiB
7Elfogadva1ms316 KiB
subtask310/10
8Elfogadva1ms316 KiB
9Elfogadva1ms316 KiB
10Elfogadva1ms316 KiB
11Elfogadva1ms316 KiB
12Elfogadva1ms500 KiB
subtask410/10
13Elfogadva1ms500 KiB
14Elfogadva1ms316 KiB
15Elfogadva1ms316 KiB
16Elfogadva1ms316 KiB
17Elfogadva1ms316 KiB
18Elfogadva1ms508 KiB
19Elfogadva1ms512 KiB
20Elfogadva1ms316 KiB
21Elfogadva1ms316 KiB
22Elfogadva1ms316 KiB
subtask510/10
23Elfogadva1ms316 KiB
24Elfogadva1ms316 KiB
25Elfogadva1ms316 KiB
26Elfogadva1ms316 KiB
27Elfogadva1ms500 KiB
28Elfogadva4ms564 KiB
29Elfogadva6ms564 KiB
30Elfogadva8ms564 KiB
31Elfogadva9ms564 KiB
32Elfogadva16ms780 KiB
subtask610/10
33Elfogadva1ms500 KiB
34Elfogadva1ms316 KiB
35Elfogadva1ms316 KiB
36Elfogadva1ms316 KiB
37Elfogadva1ms316 KiB
38Elfogadva1ms316 KiB
39Elfogadva1ms316 KiB
40Elfogadva1ms316 KiB
41Elfogadva1ms316 KiB
42Elfogadva1ms500 KiB
43Elfogadva1ms508 KiB
44Elfogadva1ms512 KiB
45Elfogadva1ms316 KiB
46Elfogadva1ms316 KiB
47Elfogadva1ms316 KiB
48Elfogadva4ms564 KiB
49Elfogadva6ms564 KiB
50Elfogadva8ms564 KiB
51Elfogadva9ms564 KiB
52Elfogadva16ms780 KiB
53Elfogadva16ms564 KiB
54Elfogadva16ms564 KiB
55Elfogadva16ms564 KiB
56Elfogadva16ms756 KiB
57Elfogadva16ms564 KiB
subtask710/10
58Elfogadva1ms500 KiB
59Elfogadva1ms316 KiB
60Elfogadva1ms316 KiB
61Elfogadva1ms316 KiB
62Elfogadva1ms316 KiB
63Elfogadva1ms316 KiB
64Elfogadva1ms316 KiB
65Elfogadva1ms316 KiB
66Elfogadva1ms316 KiB
67Elfogadva1ms500 KiB
68Elfogadva1ms508 KiB
69Elfogadva1ms512 KiB
70Elfogadva1ms316 KiB
71Elfogadva1ms316 KiB
72Elfogadva1ms316 KiB
73Elfogadva4ms564 KiB
74Elfogadva6ms564 KiB
75Elfogadva8ms564 KiB
76Elfogadva9ms564 KiB
77Elfogadva16ms780 KiB
78Elfogadva16ms564 KiB
79Elfogadva16ms564 KiB
80Elfogadva16ms564 KiB
81Elfogadva16ms756 KiB
82Elfogadva16ms564 KiB
83Elfogadva433ms1676 KiB
84Elfogadva432ms1652 KiB
85Elfogadva430ms1668 KiB
86Elfogadva430ms1656 KiB
87Elfogadva430ms1644 KiB
subtask80/20
88Elfogadva1ms500 KiB
89Elfogadva1ms316 KiB
90Elfogadva1ms316 KiB
91Elfogadva1ms316 KiB
92Elfogadva1ms316 KiB
93Elfogadva1ms316 KiB
94Elfogadva1ms316 KiB
95Elfogadva1ms316 KiB
96Elfogadva1ms316 KiB
97Elfogadva1ms500 KiB
98Elfogadva1ms508 KiB
99Elfogadva1ms512 KiB
100Elfogadva1ms316 KiB
101Elfogadva1ms316 KiB
102Elfogadva1ms316 KiB
103Elfogadva4ms564 KiB
104Elfogadva6ms564 KiB
105Elfogadva8ms564 KiB
106Elfogadva9ms564 KiB
107Elfogadva16ms780 KiB
108Elfogadva16ms564 KiB
109Elfogadva16ms564 KiB
110Elfogadva16ms564 KiB
111Elfogadva16ms756 KiB
112Elfogadva16ms564 KiB
113Elfogadva433ms1676 KiB
114Elfogadva432ms1652 KiB
115Elfogadva430ms1668 KiB
116Elfogadva430ms1656 KiB
117Elfogadva430ms1644 KiB
118Időlimit túllépés679ms2216 KiB
119Időlimit túllépés679ms2220 KiB
120Időlimit túllépés680ms2216 KiB
121Időlimit túllépés679ms2196 KiB
122Időlimit túllépés683ms2212 KiB
123Időlimit túllépés684ms2224 KiB
124Időlimit túllépés685ms2220 KiB
125Időlimit túllépés685ms2220 KiB
126Időlimit túllépés684ms2232 KiB
127Időlimit túllépés685ms2228 KiB