总结 Date 2017.09.23


<1>统计数字

某次科研调查时得到了n个自然数,每个数均不超过1500000000(1.5*10^9)。已知不相同的数不超过10000个,现在需要统计这些自然数各自出现的次数,并按照自然数从小到大的顺序输出统计结果。

思路1:桶排序(但数字范围过大,舍)

思路2:自带排序函数(包含头文件#include< algorithm >)

具体代码:

    sort(a,a+n);
int k = 0;
for(int i = 0;i<n;i++)
{
b[k][1] = a[i];
if(a[i] == a[i+1])
{ b[k][0]++;
}else{
k++;
}
}

Sort函数的用法:

bool compare(int a,int b)

{

return a>b; // return 0 即 交换

}

sort(a,a+n,compare);

<2>蜜蜂路线

一只蜜蜂在下图所示的数字蜂房上爬动,已知它只能从标号小的蜂房爬到标号大的相邻蜂房,现在问你:蜜蜂从蜂房M开始爬到蜂房N,M小于N,有多少种爬行路线?

思路1:将路线转换为二维地图,两个数组表示前进方式,用搜索回溯算法(果断超时)

思路2:总结出递推式(赤裸裸的斐波那契数列),然后,果断超过long long 类型最大值,考虑高精度。

1 — 3 — 5 — 7………………

—2 —4 — 6………………

具体如下

int k1 = 500;
b[500] = 1,c[500] = 0;
for(int i = 500;i>=500-(n-m)+1;i--)
{
for(int j = 500;j>=k1;j--)
{
a[j] = b[j] + c[j];
}
for(int j = 500;j>=k1;j--)
{
if(a[j] >= 10)
{
a[j-1] += a[j]/10;
a[j] %= 10;
if(j == k1)
{
k1--;
j = 0;
}
}
}
for(int i = k1;i<=500;i++)
{
c[i] = b[i];
}
for(int i = k1;i<=500;i++)
{
b[i] = a[i];
}
}

<3>Hanoi双塔问题

给定A、B、C三根足够长的细柱,在A柱上放有2n个中间有孔的圆盘,共有n个不同的尺寸,每个尺寸都有两个相同的圆盘,注意这两个圆盘是不加区分的(下图为n=3的情形)。现要将这些圆盘移到C柱上,在移动过程中可放在B柱上暂存。要求:

(1)每次只能移动一个圆盘;

(2)A、B、C三根细柱上的圆盘都要保持上小下大的顺序;

任务:设An为2n个圆盘完成上述任务所需的最少移动次数,对于输入的n,输出An。

思路1:还是公式,赤裸裸 2*(2^n-1),考虑高精度。

思路2:递归算法,很明显的递归,开冰箱放大象嘛(肯定超过数据类型的最大范围了)

具体如下:

    a[300] = 1;
int k = 300;
for(int i = 1;i<=n+1;i++)
{
for(int j = k;j<=300;j++)
{
a[j]*=2;
if(a[j] >= 10)
{
if(j == k)
{
k--;
}
a[j-1] += a[j]/10;
a[j] %= 10;
}
}
}

递归版:

void hannuota(int n)
{
if(n==1)
{
sum++;
}
else{
hannuota(n-1);
sum++;
hannuota(n-1);
}
}

终于,总结完了。

总结 Date 2017.09.23的更多相关文章

  1. 调试大叔V1.0.1(2017.09.01)|http/s接口调试、数据分析程序员辅助开发神器

    2017.09.01 - 调试大叔 V1.0.1*支持http/https协议的get/post调试与反馈:*可保存请求协议的记录:*内置一批动态参数,可应用于URL.页头.参数:*可自由管理cook ...

  2. 2017.10.23 Java 面向对象深入学习---final 关键字、static关键字、匿名对象等

    今日内容介绍 1.final 关键字 2.static 关键字 3.匿名对象 4.内部类 5.包的声明与访问 6.访问修饰符 7.代码块 第一节课 01(面向对象)final关键字概念.avi 02: ...

  3. 团队作业4——第一次项目冲刺(Alpha版本) 2017.4.23

    本次会议为第二次Scrum Meeting会议~ 由于本次会议项目经理召开时间为10:30,在五社区会五号楼召开,召开时长约30分钟,对昨天的工作进行了总结并分配了今天的任务. 1.站立式会议照片(拍 ...

  4. 2017.9.23 C组比赛总结

    今天又回到了C组,感觉爽歪歪~分数终于是个三位数了,yes! 第一题,赛车.水!只用一个贪心就可以AC了. first,以速度为关键字小到大qsort一下... scond,枚举每一个赛车,看看它可以 ...

  5. Java初步学习——2021.09.23每日报告,第三周周四

    (1)今天做了什么: (2)明天准备做什么? (3)遇到的问题,如何解决? 学习数组,编写了一个随机选牌的代码.自己最开始一直想只设置一个字符串数组,利用随机数来输出,但那样对字符串赋值会比较麻烦.可 ...

  6. CF 15/09/23

    CF580A 给出一个数列,求最长不下降子序列(连续) 直接DP,O(n) CF580B 主人公有n个朋友,每一个朋友有2个属性:m,sat 现在他想邀请部分朋友,邀请的人满足MAX_M-MIN_M& ...

  7. SNS团队第二次站立会议(2017.04.23)

    一.当天站立式会议照片 本次会议主要内容:汇报工作进度,根据完成情况调整进度 二.每个人的工作 成员 今天已完成的工作 明天计划完成的工作 罗于婕 梳理清楚数据的每个类型和数据项  具体落实把相关数据 ...

  8. 团队作业4——第一次项目冲刺(Alpha版本)2017.4.23

    1.当天站立式会议照片 本次会议为第一次会议 本次会议在5号公寓1楼召开,本次会议内容: ①:做第一天的简单分工 ②:讨论每个人是否对安排的任务有苦难 ③:规定完成时间是在第二天之前 ④:遇到困难,及 ...

  9. SNS团队Beta阶段第二次站立会议(2017.05.23)

    1.立会照片 2.每个人的工作 每个成员的分工: 成员 今天已完成的工作 明天计划完成的工作 罗于婕 完善代码规范文档 辅助完善生词本 龚晓婷 界面优化  辅助开发新功能 林仕庄 界面图标不对齐bug ...

随机推荐

  1. jQuery(四)(DOM一)

    jQuery把复杂的代码简单化. 如果我们通过AJAX获取到数据之后然后才能确定结构的话,这种情况就需要动态的处理节点了 一.DOM节点的创建:创建div节点元素的属性和创建div节点元素的样式doc ...

  2. python 修改xml文件

    在百度知道里面有人问了这么一个问题: 有一个xml文件:<root>text <a/> <a/> ...这里省略n个<a/> <root>想 ...

  3. 使用swagger时遇到的问题

    后端写好接口后开始和前端进行联调,为了减少时间成本或者说是后端不想写文档,所以便想使用一套可以自动化生成api接口文档的工具,swagger正是可以解决这一需求.于是很早之前就想把swagger集成到 ...

  4. hibernate_HelloWorld

    环境准备 1.下载 hibernate 3.3.2: 2.下载 hibernate 3.4.0: 3.注意阅读 hibernate compatibility matrix(hibernate 网站, ...

  5. Struts2_HelloWorld_7_1

    大致了解应用的运行过程: 由请求路径开始,浏览器端通过URL向tomcat发送http请求(如:http://localhost:8080/Struts2_0100_Introduction/hell ...

  6. SharePoint 2010 VS.net 2010 断点调试

    当IE打开之后 1在代码的项目:右键:重新生成 2用WSPBuilder的Copy to GAC 3IE要调试的页面:刷新 4用WSPBuilder的Attach to IIS Worker Proc ...

  7. 洛谷 P3905 道路重建

    题目描述 从前,在一个王国中,在n个城市间有m条道路连接,而且任意两个城市之间至多有一条道路直接相连.在经过一次严重的战争之后,有d条道路被破坏了.国王想要修复国家的道路系统,现在有两个重要城市A和B ...

  8. 第三章 八位数字开关板&模拟输入板&火焰传感器

    这节我将带大家了解亮宁机器人基础外接硬件. 八位数字板开关 接线方法:W1~W8接23~37号数字端口,Enter接39号数字端口,vcc和gnd分别接正负. #include <LNDZ.h& ...

  9. javascript中的循环引用对象处理

    先说明一下什么是循环引用对象: var a={"name":"zzz"}; var b={"name":"vvv"}; ...

  10. 关于Ubuntu下安装Win8和Win8下安装Ubuntu的注意事项

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/svitter/article/details/32932387 本文出自:http://blog.c ...