当前位置: 首页 > news >正文

广州兼职网网站建设旅游景区网络营销案例

广州兼职网网站建设,旅游景区网络营销案例,建筑工程网cnas,网站开发语言比较1316:【例4.6】数的计数(Noip2001) 【题目描述】 我们要求找出具有下列性质数的个数(包括输入的自然数n )。先输入一个自然数n(n≤1000),然后对此自然数按照如下方法进行处理:不作任何处理;在它的左边加上一…

1316:【例4.6】数的计数(Noip2001)
【题目描述】
我们要求找出具有下列性质数的个数(包括输入的自然数n
)。先输入一个自然数n(n≤1000),然后对此自然数按照如下方法进行处理:不作任何处理;在它的左边加上一个自然数,但该自然数不能超过原数的一半;加上数后,继续按此规则进行处理,直到不能再加自然数为止。
【输入】
自然数n(n≤1000)。
【输出】
满足条件的数。

【输入样例】
6
【输出样例】
6
【提示】
【样例解释】

满足条件的数为如下所示:

6
16
26
126
36
136

思路:

  • 首先分析: 一个自然数左边加上一个自然数:举例-100,左边加上后可以为50100,,,,2550,,,,,49100,,,24100,,,所以他的数量为1~50这五十个自然数的每次计数之和
  • 由于每个自然数独一无二,左边加上一个自然数就多了该自然数的排列方式,所以可以理解为前n/2个自然数不同排列组成的数的个数之和
  • 由于数据庞大,在使用递归式时可以考虑该数组的值是否已经求了,如果已求,则可以直接跳过,节省运行时间(记忆搜索
  • 如果采用一层for循环的递归方式则会超时:用一个变量去存,由于每次都要从1开始计算,所以会超时
#include<bits/stdc++.h>
using namespace std;
//由于直接每次num(i),只是用sum记忆次数,则会超时,所以选择用记忆的方式,每次计算后存起来 
//记忆搜索(一个if判断数组值是否为0)+递归 
int sum = 0,a[1001];
//定义计数的函数
void num(int m) ;
int main(){int n;cin>>n;num(n);cout<<a[n];return 0;
} 
void num(int m){if(a[m]>0) return;//表示该数值已经求到了a[m]=1;// 自身也是一种情况 for(int i=1;i<=m/2;i++){num(i);//每次都递归一下(避免前面的数未计数) a[m]+=a[i];}
}
http://www.r43.cn/news/129260.html

相关文章:

  • 网站常用后台路径保定百度推广联系电话
  • 做网站盐城沈阳seo博客
  • 江苏网站建设开发seo扣费系统源码
  • 农业基本建设项目信息网站黑龙江最新疫情
  • 英文网站中英对照今日军事新闻头条视频
  • 鄂尔多斯做网站的公司刚刚发生了一件大事
  • 湖口县建站公司台州专业关键词优化
  • 马鞍山网站建设费用国外网站制作
  • 江西南昌网站建设哪家公司好网站如何做优化推广
  • 北京网站设计制作哪家好信息流投放
  • 网络开发工具有哪些seo教学培训
  • her123 wordpress安阳seo
  • 河南南阳油田网站建设在哪里找专业推广团队
  • 微信管理平台seo厂商
  • wordpress有趣插件深圳排名seo
  • 怎么搞自己的网站百度推广官网电话
  • 自己做网站必须要学哪些深圳做推广哪家比较好
  • 四川网站开发制作如何建立自己的网站平台
  • 广州专业网站建设公司seo查询seo优化
  • 北京网站推广价格重庆网站排名提升
  • 网站建设 公司新闻热点新闻事件及观点
  • 珠宝出售网站模板买转发链接
  • win7网站后台无法编辑手机百度网页版入口
  • 南京建设工程信息网站免费推广网站排名
  • 调取接口做网站十大免费推广平台
  • 山东平台网站建设推荐百度旗下有哪些app
  • 吴中区网站建设百度云超级会员试用1天
  • 四大门户网站现状培训学校机构有哪些
  • 网站建设价格明细百度权重提升
  • 微信上微网站怎么做的最近实时热点事件