
程序设计方法
文章平均质量分 59
八咫鸦是我的光!
菜鸟的志向!
展开
-
贪心算法(内含问题求助)
问题引入:找零钱问题:现有面值为壹元,五角和一角的钞票,需要找零一元五角,请问如何分配才能使用数量最少的钞票:解决方法:从大到小找(这就是贪心算法)(总是做出当前看来最好的选择——局部最优)但是,稍微修改以下问题就不能用这个方法了:现有面值为壹元壹角,五角和一角的钞票,需要找零一元五角,请问如何分配才能使用数量最少的钞票。(若按面值大小找,则需一张壹元壹角,四张一角,共五张,但我们可以明显看出,可以只用三张五角的钞票。)【局限性】贪心算法:类似于分治策略和动态规划,也是基于子问题思想的策略。原创 2021-05-15 19:48:05 · 959 阅读 · 0 评论 -
递归-动态规划
简单递归单向递归:递归的路径就是一个方向递归的两个必要条件:1.存在限制2.每次递归调用之后越来越接近这个限制条件例子1:实现求斐波那契数#include<iostream>using namespace std;int fus(int a){ if(a==1) return 1; else if (a==0) return 0; else return fus(a-1)+fus(a-2);}int main(){ int n; cin>>原创 2021-04-27 22:52:23 · 330 阅读 · 0 评论 -
c语言~西天取经
题目描述经过九九八十一难,唐僧和他徒弟们终于到了西天。幽静的雷音寺中包含了 n 个房间,每个房间中 k 本经书,每本经书都有一定的价值。由于时间限制,每个房间只够拿一本经书,很显然,肯定拿那本价值最大的经书。输入描述输入数据的第一行是房间数 n。接下来的 n 行每行描述了房间的经书情况:第一个数是经书的本数 k,然后是 k 个整数,表示每一本经书的价值。输出描述占一行,唐僧他们总共能拿到经书的最大价值(在 long 范围以内)。样例输入43 2 2 55 3 3 4 4 12 30 23原创 2021-03-24 19:18:53 · 625 阅读 · 0 评论 -
c语言实现6174数字黑洞
题目描述任意一个每位数字不完全相同的 4 位正整数,将各位上数字重新组合成一个最大数和一个最小数相减,重复这个过程,必定得到 6174.输入描述有多组测试数据,每组测试数据占一行.每行输入一个 44 位正整数.输出描述占一行,最终得到 61746174 的变换次数.样例输入Copy to Clipboard123410006174样例输出Copy to Clipboard350头一次看到这个题目我是一脸蒙圈的状态啊,啥玩意,找规律吗?然后我就在纸上试着找了找规律,发现循环次原创 2021-03-20 23:46:02 · 6980 阅读 · 1 评论 -
c语言实现回文方阵
题目描述在一个 n×n 的方阵中,填入 1,2,3,……,n^2 个数,构成回文方阵输入描述输入一个 正整数 n, 占一行输出描述输出一个 nxn 的螺旋方阵,每行的数字之间用 1 个空格分开。样例输入5样例输出13 14 15 16 112 23 24 17 211 22 25 18 310 21 20 19 49 8 7 6 5思路:用数组实现数字总是在拐弯处时行列的规律的顺序变化会发生另一种规律变化数组的初始值为0操作之前明白memsetmemset是计算机c原创 2021-03-20 22:10:01 · 4080 阅读 · 0 评论 -
程序设计第一节课3.20上午
一些零散的知识点%s 输出一个字符串%c 输出单个字符%p 输出指针地址值关于EOF函数(文件结束符)通常在文本的最后存在表示资料结束返回一个数值符号常量,通常它的值是-1(这种以EOF为文件结束标志的文件,必须是文本文件)getline函数用法这是c++里面的函数它包含在头文件#include<string>中。形式istream& getline(istream &is,string,string &str,char delim);其中原创 2021-03-20 21:47:58 · 103 阅读 · 0 评论