A
Size: a a a
A
A
УМ
P
УМ
ДM
J
ДM
ДM
#include <iostream>
#include <map>
using namespace std;
int minx(int a, int b, int c)
{
if (a < b && a < c&&a!=-1)
return a;
else if (b < a && b < c&&b!=-1)
return b;
else if (c < a && c < b&&c!=-1)
return c;
}
int value;
std::map<int, int> memory;
int li(int val,int ways=0)
{
ways++;
if (memory.find(val) != memory.end()) return memory[val];
else memory[val] = ways;
if (val == 1) return ways;
else if (val / value >= 3) return -1;
int a=-1, b=-1, c=-1;
if (val % 3 == 0)
a = li(val / 3);
b = li(val + 1);
c = li(val - 1);
cout << a << ":" << b << ":" << c<<endl;
return minx(a, b, c);
}
int main()
{
cin >> value;
cout << li(value) << endl;
}
AD
P
E🤙
P