c/c++感受算法乐趣(2)

开始时间2023-04-15 22:26:49

结束时间2023-04-16 00:18:16

前言:首先我们来回忆一下昨天接触了些什么算法题,1.1百钱百鸡问题,1.2借书方案知多少,1.3打鱼还是晒网,这三个题中有一个统一的思想就是枚举模拟,根据达成某种条件便解决了这类问题。这种暴力解决的方法很常见,也是问题通用的方法之一。bdw,说来惭愧今年的蓝桥杯我全是暴力做的,属实是送钱了。话不多说,咱们进入今天的趣味算法题。

第一章 趣味算法入门

第四题 抓交通肇事犯

一.问题描述

二.设计思路

  很明显无输入,求一个四位数,前两位相同(a=b),后两位相同(c=d),前两位与后两位不相同(a!=c),而且是一个平方数。可以用枚举模拟,i的范围在1~9,j的范围在0~9,并且i!=j,k=1100倍的i+11倍的j,然后判断k是不是一个平方数,如果是便输出车号。

三.流程图

四.源代码

#include<stdio.h>
int main()
{
int i,j,k,s;
for(i=1;i<=9;i++)
{
for(j=0;j<=9;j++)
{
k=1100*i+11*j;
for(s=32;s<100;s++)
{
if(k==(s*s))
{
printf("%d%d%d%d",i,i,j,j);
}
}
}
}
return 0;
}

五.运行结果

第五题 兔子产子问题

一.问题描述

二.设计思路

  这是一个经典的迭代循环问题,第一次做我还错以为是枚举模拟。1,1,2,3,5,8,13等等的斐波那契数列,由前两个数可以推出第三个数。这题无输出,最后输出斐波那契数列第三十个数;

三.流程图

四.源代码

#include<stdio.h>
int main()
{
long a=1,b=1,temp;
int i;
printf("%d\t%d\t",a,b);
for(i=0;i<28;i++)
{
temp=a+b;
b=a;
a=temp;
printf("%ld\t",temp);
}
return 0;
}

五.运行结果

第六题 牛顿迭代法求方程根

一.问题描述

二.设计思路

  这也是很经典的一道题目,迭代的本质是越来越接近方程的根,会用到math函数要加上math.h文件头。

  这个题在实验四函数程序设计中出现过,到时候咱们再细讲。

三.流程图

四.源代码

#include <stdio.h>
#include <math.h>
double f(double a,double b,double c,double d,double x)/*功能为运用牛顿迭代法求给定方程在x附近的一个实根*/
{
double x0,f,f1;
do
{
x0=x;
f=((a*x0+b)*x0+c)*x0+d;
f1=(3*x0*a+2*b)*x0+c;
x=x0-f/f1;
}while(fabs(x-x0)>=1e-3);
return(x);
}
int main(){
double a,b,c,d,x;
scanf("%lf%lf%lf%lf%lf",&a,&b,&c,&d,&x);
printf("%lf\n",f(a,b,c,d,x));
return 0;
}

五.运行结果

第七题 最佳存款问题

一.问题描述

二.设计思路

  本题无输入 ,从第五年初开始计算,进行四次循环,每次循环在上一次的基础上加上一千元并且除以利率;

三.流程图

四.源代码

#include<stdio.h>
int main()
{
int i=0;
double sum=0;
for(i=0;i<5;i++)
{
sum=(sum+1000.0)/(1+0.0063*12);
}
printf("%.2f",sum);
return 0;
}

五.运行结果

每日一mo:堂堂全国唯一一所以铁道命名大学的学生五一回家竟然还要抢票,它真的,我哭死......

c/c++快乐算法第二天的更多相关文章

  1. Apriori算法第二篇----详细分析和代码实现

    1 Apriori介绍 Apriori算法使用频繁项集的先验知识,使用一种称作逐层搜索的迭代方法,k项集用于探索(k+1)项集.首先,通过扫描事务(交易)记录,找出所有的频繁1项集,该集合记做L1,然 ...

  2. java版数据结构与算法第二章数组

    数组由一组具有相同类型的数据元素组成,并存储在一组连续存储单元中.一维数组是常量. 二维数组:若一维数组中的数据元素又是一堆数据结构,我们称之为二维数组.二维数组可以看成是n个列向量组成的线性表. 数 ...

  3. 超强敏感词过滤算法第二版 可以忽略大小写、全半角、简繁体、特殊符号、HTML标签干扰

    上一篇 发一个高性能的敏感词过滤算法 可以忽略大小写.全半角.简繁体.特殊符号干扰 改进主要有几点: 用BitArray取代Dictionary用空间换时间 性能进一步提升 大概会增加词库的  6k* ...

  4. javascript数据结构和算法 第二章 (数组) 二

    字符串表示的数组 join() 和 toString() 函数返回数组的字符串表示.这两个函数通过将数组中的元素用逗号分隔符切割,返回字符串数组表示. 这里有个样例: var names = [&qu ...

  5. 【学习总结】java数据结构和算法-第二章-数据结构和算法概述

    总目录链接 [学习总结]尚硅谷2019java数据结构和算法 github:javaDSA 目录 数据结构和算法的关系 几个实际编程中的问题 线性结构和非线性结构 数据结构和算法的关系 几个实际编程中 ...

  6. 题解:2018级算法第二次上机 Zexal的排座位

    题目描述: 样例: 实现解释: 一道看似复杂但实际既是斐波那契变形的题目 知识点:递推,斐波那契 通过问题的描述,可以得到以下规律:(除了座位数为一时)男生坐最后时,倒数第二个一定是女生:女生坐最后, ...

  7. 2016级算法第二次上机-G.ModricWang's Real QuickSort

    873 思路 这是一道非常基础的题,目的是帮助大家回顾快排相关的知识.大家完成此题之后应该就对快排有比较深刻的印象了. 对于整个快排的流程,题目描述中已经给了清晰完整的伪代码.需要自己加工的部分就是, ...

  8. 2016级算法第二次上机-F.ModricWang's Number Theory II

    891 ModricWang's Number Theory II 思路 使得序列的最大公约数不为1,就是大于等于2,就是找到一个大于等于2的数,它能够整除序列中的所有数. 考虑使得一个数d整除数组中 ...

  9. 2016级算法第二次上机-E.AlvinZH的儿时梦想——运动员篇

    862-AlvinZH的儿时梦想--运动员篇 思路 难题. 应该想到,不管给出的数据如何,每一个淘汰的人不会对最终答案产生任何影响,所以每次淘汰就把人除掉就可以了,最后剩下的两个人计算它们从开始到相遇 ...

  10. 2016级算法第二次上机-D.Bamboo的饼干

    Bamboo的饼干 分析 从两个数组中各取一个数,使两者相加等于给定值.要注意去重和排序 难度不大,方法很多,基本只要不大于O(n^2 ) 的都可以过.本意想考察二分搜索 还可以借助stl中的map, ...

随机推荐

  1. hdu:"红色病毒"问题(指数型母函数用e^x指数函数来计算)

    Problem Description医学界发现的新病毒因其蔓延速度和Internet上传播的"红色病毒"不相上下,被称为"红色病毒",经研究发现,该病毒及其变 ...

  2. cpu的调度

    什么是cpu的调度 所谓 CPU 调度,就是确定把哪个处于淮备就绪状态的进程移入运行状态.也就是说,CPU调度算法将决定把 CPU 给予哪个进程,以便它能够运行. 两种调度方式 CPU 调度可以是在一 ...

  3. 【原创】SeetaFace2 Android编译

    SeetaFace2 github上有很完整的编译说明,但是自己编译过程中还是遇到了一点小问题.记录一下 编译环境: wsl ubuntu 20.04 执行编译命令 cmake .. -DCMAKE_ ...

  4. FHAdmin实战获取shell

    又是一个愉快的摸鱼的一天,闲来无事去逛先知社区突然看到了一篇名为shrio权限实战绕过的文章(https://xz.aliyun.com/t/8311),这时不禁突然 回想起来之前看到过的一个微信公众 ...

  5. bilibili视频常用快捷键

    Esc退出全屏 Q点赞.长按三连 W投币 E收藏 D开/关弹幕 F开/关全屏 M静音 [ 多P 上一个 ] 多P下一个 Enter发弹幕 Space播放/暂停 →单次快进5s,长按倍速播放 ←快退5s ...

  6. unidbgrid按回车键切换到右侧CELL

    打开UniDBGrid的ClientEvents->ExtEvents属性,编辑Ext.grid.Panel的reconfig函数,输入如下代码就可以实现当UniDBGrid表格的ReadOnl ...

  7. sql Alias别名

    sql语句中where.group by.having.order by 是否可以使用别名 1.在mysql中,group by.order by中可以使用别名:where中不能使用别名,(如果别名来 ...

  8. sql 查询大数据 常用 50列优化

    大数据量的问题是很多面试笔试中经常出现的问题,比如baidu google 腾讯 这样的一些涉及到海量数据的公司经常会问到. 下面的方法是我对海量数据的处理方法进行了一个一般性的总结,当然这些方法可能 ...

  9. ajax缓存和fiddler——http协议调试代理工具

    1.在ie9下,ajax请求可能会有缓存,需要在请求上一个随机数 如:Math.random(); 2.fiddler2 打开以后可以查看所有的http请求情况,也可以使用本地脚本代替要请求的js文件 ...

  10. 非常有用的python单行代码

    1 推导式应用 1.1 列表推导式(一行for循环) #For循环在一行 mylist = [200, 300, 400, 500] #正常方式 result = [] for x in mylist ...