| Task: | Equilateral numbers |
| Sender: | Taffa Spaghetti |
| Submission time: | 2024-11-16 15:02:30 +0200 |
| Language: | C++ (C++17) |
| Status: | READY |
| Result: | ACCEPTED |
| test | verdict | time | |
|---|---|---|---|
| #1 | ACCEPTED | 0.00 s | details |
| #2 | ACCEPTED | 0.00 s | details |
| #3 | ACCEPTED | 0.00 s | details |
| #4 | ACCEPTED | 0.00 s | details |
| #5 | ACCEPTED | 0.01 s | details |
| #6 | ACCEPTED | 0.05 s | details |
| #7 | ACCEPTED | 0.01 s | details |
| #8 | ACCEPTED | 0.54 s | details |
| #9 | ACCEPTED | 0.47 s | details |
| #10 | ACCEPTED | 0.42 s | details |
| #11 | ACCEPTED | 0.45 s | details |
| #12 | ACCEPTED | 0.64 s | details |
Code
#include <bits/stdc++.h>
using namespace std;
#define endl "\n";
#define PRINT_ARR(arr, n) \
do { \
for (int i = 0; i < n; i++) { \
cout << (arr)[i] << " "; \
} \
cout << endl; \
} while (0)
typedef long long ll;
unordered_set<ll> S;
int main() {
ll n;
cin >> n;
for (ll i = 1; i*(i+1)/2 <= n; ++i) {
S.insert(i*(i+1)/2);
}
if (S.count(n)) {
cout << "1\n";
return 0;
}
for (ll c : S) {
if (S.count(n - c)) {
cout << "2\n";
return 0;
}
}
cout << "3\n";
return 0;
}Test details
Test 1
Verdict: ACCEPTED
| input |
|---|
| 1 |
| correct output |
|---|
| 1 |
| user output |
|---|
| 1 |
Test 2
Verdict: ACCEPTED
| input |
|---|
| 2 |
| correct output |
|---|
| 2 |
| user output |
|---|
| 2 |
Test 3
Verdict: ACCEPTED
| input |
|---|
| 3 |
| correct output |
|---|
| 1 |
| user output |
|---|
| 1 |
Test 4
Verdict: ACCEPTED
| input |
|---|
| 5 |
| correct output |
|---|
| 3 |
| user output |
|---|
| 3 |
Test 5
Verdict: ACCEPTED
| input |
|---|
| 33 |
| correct output |
|---|
| 3 |
| user output |
|---|
| 3 |
Test 6
Verdict: ACCEPTED
| input |
|---|
| 12385719843 |
| correct output |
|---|
| 3 |
| user output |
|---|
| 3 |
Test 7
Verdict: ACCEPTED
| input |
|---|
| 10935032 |
| correct output |
|---|
| 3 |
| user output |
|---|
| 3 |
Test 8
Verdict: ACCEPTED
| input |
|---|
| 659023495928 |
| correct output |
|---|
| 3 |
| user output |
|---|
| 3 |
Test 9
Verdict: ACCEPTED
| input |
|---|
| 913591235689 |
| correct output |
|---|
| 2 |
| user output |
|---|
| 2 |
Test 10
Verdict: ACCEPTED
| input |
|---|
| 999999911791 |
| correct output |
|---|
| 1 |
| user output |
|---|
| 1 |
Test 11
Verdict: ACCEPTED
| input |
|---|
| 1000000000000 |
| correct output |
|---|
| 2 |
| user output |
|---|
| 2 |
Test 12
Verdict: ACCEPTED
| input |
|---|
| 999999999998 |
| correct output |
|---|
| 3 |
| user output |
|---|
| 3 |
