最近我问了一个问题,但是关于递归导致了这个问题
注意 - > count()该函数返回键K在映射容器中的出现次数.如果密钥存在于容器中,则返回1,因为映射仅包含唯一键.如果映射容器中不存在该键,则返回0.它几乎通过了所有的测试用例,但是1 000 000 000
根据long long int range值失败,它也应该通过这个,但是它给出了一些负值作为输出; 我认为这是容器地图的问题任何人都可以帮我解决地图上的错误吗?
#include<bits/stdc++.h>
using namespace std;
map <long long int,long long int> dp;
int exchange(long long int n){
if(n<12)
return n;
if(dp.count(n))
return dp[n];
return dp[n] = exchange(n/2)+exchange(n/3)+exchange(n/4);
}
int main(){
// int t;
// cin>>t;
while(1){
// memset(dp,-1,sizeof(dp));
long long int n;
cin>>n;
cout<<exchange(n)<<endl;
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
151 次 |
| 最近记录: |