208732026-01-10 18:01:42vyrallMunkákpython3Accepted 80/80414ms18256 KiB

n, m = map(int, input().split())
megbizasok = n * [(0, 0)]
dolgozott = n * [False]
for i in range(m):
    nap, penz = map(int, input().split())
    if penz > megbizasok[nap - 1][0]:
        megbizasok[nap - 1] = (penz, i + 1)

dp = n * [0]
dp[0] = megbizasok[0][0]
for i in range(1, n):
    if i == 1:
        if dp[0] >= megbizasok[1][0]:
            dp[1] = dp[0]
        else:
            dp[1] = megbizasok[1][0]
    else:
        if dp[i - 1] >= dp[i - 2] + megbizasok[i][0]:
            dp[i] = dp[i - 1]
        else:
            dp[i] = dp[i - 2] + megbizasok[i][0]

j = n - 1
while j >= 0:
    if j == 0:
        if dp[0] > 0:
            dolgozott[0] = True
        break
    elif j == 1:
        if dp[1] == megbizasok[1][0] and megbizasok[1][0] > 0:
            dolgozott[1] = True
        elif dp[1] == dp[0] and dp[0] > 0:
            dolgozott[0] = True
        break
    else:
        if dp[j] == dp[j - 2] + megbizasok[j][0] and dp[j] != dp[j - 1]:
            dolgozott[j] = True
            j -= 2
        else:
            j -= 1

print(dp[-1], dolgozott.count(True))
ids = []
for i in range(n):
    if dolgozott[i]:
        ids.append(megbizasok[i][1])
print(' '.join(map(str, ids)))
SubtaskSumTestVerdictTimeMemory
subtask10/0
1Accepted16ms3128 KiB
2Accepted234ms5428 KiB
subtask210/10
3Accepted16ms3124 KiB
4Accepted16ms3016 KiB
5Accepted16ms3124 KiB
6Accepted16ms3124 KiB
7Accepted17ms3320 KiB
subtask310/10
8Accepted16ms3264 KiB
9Accepted16ms3124 KiB
10Accepted16ms3124 KiB
11Accepted16ms3112 KiB
12Accepted16ms3208 KiB
subtask410/10
13Accepted16ms3124 KiB
14Accepted16ms3016 KiB
15Accepted16ms3124 KiB
16Accepted16ms3124 KiB
17Accepted17ms3320 KiB
18Accepted17ms3120 KiB
19Accepted16ms3152 KiB
20Accepted17ms3252 KiB
21Accepted16ms3028 KiB
22Accepted17ms3312 KiB
subtask510/10
23Accepted16ms3264 KiB
24Accepted16ms3124 KiB
25Accepted16ms3124 KiB
26Accepted16ms3112 KiB
27Accepted16ms3208 KiB
28Accepted21ms3528 KiB
29Accepted21ms3436 KiB
30Accepted24ms3308 KiB
31Accepted24ms3380 KiB
32Accepted26ms3380 KiB
subtask610/10
33Accepted16ms3124 KiB
34Accepted16ms3016 KiB
35Accepted16ms3124 KiB
36Accepted16ms3124 KiB
37Accepted17ms3320 KiB
38Accepted16ms3264 KiB
39Accepted16ms3124 KiB
40Accepted16ms3124 KiB
41Accepted16ms3112 KiB
42Accepted16ms3208 KiB
43Accepted17ms3120 KiB
44Accepted16ms3152 KiB
45Accepted17ms3252 KiB
46Accepted16ms3028 KiB
47Accepted17ms3312 KiB
48Accepted21ms3528 KiB
49Accepted21ms3436 KiB
50Accepted24ms3308 KiB
51Accepted24ms3380 KiB
52Accepted26ms3380 KiB
53Accepted27ms3312 KiB
54Accepted27ms3380 KiB
55Accepted26ms3380 KiB
56Accepted27ms3576 KiB
57Accepted28ms3576 KiB
subtask710/10
58Accepted16ms3124 KiB
59Accepted16ms3016 KiB
60Accepted16ms3124 KiB
61Accepted16ms3124 KiB
62Accepted17ms3320 KiB
63Accepted16ms3264 KiB
64Accepted16ms3124 KiB
65Accepted16ms3124 KiB
66Accepted16ms3112 KiB
67Accepted16ms3208 KiB
68Accepted17ms3120 KiB
69Accepted16ms3152 KiB
70Accepted17ms3252 KiB
71Accepted16ms3028 KiB
72Accepted17ms3312 KiB
73Accepted21ms3528 KiB
74Accepted21ms3436 KiB
75Accepted24ms3308 KiB
76Accepted24ms3380 KiB
77Accepted26ms3380 KiB
78Accepted27ms3312 KiB
79Accepted27ms3380 KiB
80Accepted26ms3380 KiB
81Accepted27ms3576 KiB
82Accepted28ms3576 KiB
83Accepted195ms10788 KiB
84Accepted195ms10800 KiB
85Accepted186ms10700 KiB
86Accepted192ms10672 KiB
87Accepted188ms11060 KiB
subtask820/20
88Accepted16ms3124 KiB
89Accepted16ms3016 KiB
90Accepted16ms3124 KiB
91Accepted16ms3124 KiB
92Accepted17ms3320 KiB
93Accepted16ms3264 KiB
94Accepted16ms3124 KiB
95Accepted16ms3124 KiB
96Accepted16ms3112 KiB
97Accepted16ms3208 KiB
98Accepted17ms3120 KiB
99Accepted16ms3152 KiB
100Accepted17ms3252 KiB
101Accepted16ms3028 KiB
102Accepted17ms3312 KiB
103Accepted21ms3528 KiB
104Accepted21ms3436 KiB
105Accepted24ms3308 KiB
106Accepted24ms3380 KiB
107Accepted26ms3380 KiB
108Accepted27ms3312 KiB
109Accepted27ms3380 KiB
110Accepted26ms3380 KiB
111Accepted27ms3576 KiB
112Accepted28ms3576 KiB
113Accepted195ms10788 KiB
114Accepted195ms10800 KiB
115Accepted186ms10700 KiB
116Accepted192ms10672 KiB
117Accepted188ms11060 KiB
118Accepted405ms18164 KiB
119Accepted414ms18164 KiB
120Accepted386ms18244 KiB
121Accepted375ms18160 KiB
122Accepted407ms18168 KiB
123Accepted404ms18028 KiB
124Accepted386ms18160 KiB
125Accepted368ms18256 KiB
126Accepted375ms18168 KiB
127Accepted370ms18168 KiB