| Task: | Karkit |
| Sender: | cowperso |
| Submission time: | 2021-10-05 11:56:25 +0300 |
| Language: | C++ (C++11) |
| Status: | READY |
| Result: | 100 |
| group | verdict | score |
|---|---|---|
| #1 | ACCEPTED | 100 |
| test | verdict | time | |
|---|---|---|---|
| #1 | ACCEPTED | 0.01 s | details |
| #2 | ACCEPTED | 0.01 s | details |
| #3 | ACCEPTED | 0.01 s | details |
| #4 | ACCEPTED | 0.01 s | details |
| #5 | ACCEPTED | 0.01 s | details |
Code
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int n, a, b;
cin >> n >> a >> b;
vector<int> m;
m.reserve(n + 1);
m[0] = 0;
for (int i = 1; i <= n; ++i) {
if (i < a && i < b)
m[i] = 0;
else if (i < a)
m[i] = m[i - b] + 1;
else if (i < b)
m[i] = m[i - a] + 1;
else
m[i] = std::max(m[i - a] + 1, m[i - b] + 1);
}
cout << m[n] << "\n";
}
Test details
Test 1
Verdict: ACCEPTED
| input |
|---|
| 100 1 1 |
| correct output |
|---|
| 100 |
| user output |
|---|
| 100 |
Test 2
Verdict: ACCEPTED
| input |
|---|
| 1 100 100 |
| correct output |
|---|
| 0 |
| user output |
|---|
| 0 |
Test 3
Verdict: ACCEPTED
| input |
|---|
| 50 2 3 |
| correct output |
|---|
| 25 |
| user output |
|---|
| 25 |
Test 4
Verdict: ACCEPTED
| input |
|---|
| 100 17 3 |
| correct output |
|---|
| 33 |
| user output |
|---|
| 33 |
Test 5
Verdict: ACCEPTED
| input |
|---|
| 5 5 5 |
| correct output |
|---|
| 1 |
| user output |
|---|
| 1 |
