這道題貌似只有@akee 大佬a掉,恭喜!
還有因為c++中支援兩個引數數量不同的相同名稱的函式呼叫,所以當時就沒改成兩個函式,這裡表示抱歉。
這道題可直接用指標+hash一下,然後就模擬即可。
#include
using
namespace std;
const
int mo=
10000000
;struct node
*hash[mo+10]
,*p;
long
long
max(
long
long a,
long
long b,
long
long c,
long
long d,
long
long e)
long
long
max(
long
long a,
long
long b,
long
long c,
long
long d)
long
longf(
long
long x)
long
long anss=
max(x,
f(x/2)
+f(x/3)+
f(x/8)
+f(x/9))
; p=
new node;
p->state=x;
p->ans=anss;
p->next=hash[x%mo]
; hash[x%mo]
=p;return anss;
}long
longf(
long
long a,
long
long b)
intmain()
return0;
}
另附akee大佬**:(%%%)
#include
#include
#include
#include
#include
#include
using
namespace std;
typedef
long
long ll;
const
int maxn=
10000005
;ll n,m,f[maxn]
;unordered_map has;
ll solve
(ll n)
intmain()
CYH 02 NOIp考砸後虐題賽 成績 題解
這道題挺送水了吧。兩種做法。其實空間都不需要那麼大,我來提交介面一看一堆mle的,於是還是良心的放開了時限。這麼簡單,就不做解釋了。下面放出幾種 兩個陣列 include using namespace std int a 10000005 c 10000005 intmain for int i ...
CYH 02 NOIp考砸後虐題賽 成績 題解
這道題挺送水了吧。兩種做法。其實空間都不需要那麼大,我來提交介面一看一堆mle的,於是還是良心的放開了時限。這麼簡單,就不做解釋了。下面放出幾種 兩個陣列 include using namespace std int a 10000005 c 10000005 intmain for int i ...
CYH 02 NOIp考砸後虐題賽 成績 題解
這道題挺送水了吧。兩種做法。其實空間都不需要那麼大,我來提交介面一看一堆mle的,於是還是良心的放開了時限。這麼簡單,就不做解釋了。下面放出幾種 兩個陣列 include using namespace std int a 10000005 c 10000005 intmain for int i ...