NC16690. [NOIP2001]数的计算
描述
输入描述
1个自然数n( n ≤ 1000 )
输出描述
1个整数,表示具有该性质数的个数。
示例1
输入:
6
输出:
6
C++(clang++ 11.0.1) 解法, 执行用时: 3ms, 内存消耗: 448K, 提交时间: 2023-05-14 16:13:46
#include<iostream> using namespace std; int n; int d[1100]; int main(){ cin>>n; for(int i=1;i<=n;i++){ d[i]=1; for(int j=1;j<=i/2;j++) d[i]+=d[j]; } cout<<d[n]; }
C++14(g++5.4) 解法, 执行用时: 3ms, 内存消耗: 376K, 提交时间: 2020-10-06 09:56:57
#include<bits/stdc++.h> using namespace std; int s,n; int f(int n) { if(!n)s++; else for(int i=0;i<=n/2;i++)f(i); }main() { cin>>n; f(n);cout<<s; }
pypy3(pypy3.6.1) 解法, 执行用时: 62ms, 内存消耗: 18652K, 提交时间: 2020-03-18 19:16:18
n=int(input()) arr=[0 for i in range(n+1)] arr[1]=1 for i in range(2,n+1) : arr[i]=sum(arr[:(i//2)+1])+1 # print(arr) print(arr[n])
Python3 解法, 执行用时: 45ms, 内存消耗: 5760K, 提交时间: 2023-03-11 16:47:57
h=[0]*1000 n=int(input()) for i in range(1,n+1): h[i]=1 for j in range(1,i//2+1): h[i]+=h[j] print(h[n])