算法
呆头和尚
尽最大的努力去做自己在做的事。
展开
-
枚举与递推
由0到4五个数字,组成5位数,每个数字用一次,但十位和百位不能为3(当然万位不能为0),输出所有可能的五位数` #include<iostream> using namespace std; int main() { for(int a=1;a<=4;a++) { int sum=0; for(int b=0;b<=4;b++) { if(a==b) continue; for(int c=0;c<=4;c++) { if(.原创 2020-12-26 20:49:16 · 106 阅读 · 0 评论 -
回溯
符号三角问题:下面都是“-”。 下图是由14个“+”和14个“-”组成的符号三角形。2个同号下面都是“+”,2个异号下面都是“-”。 在一般情况下,符号三角形的第一行有n个符号。符号三角形问题要求对于给定的n,计算有多少个不同的符号三角形,使其所含的“+”和“-”的个数相同。 参考代码如下,请在此基础上,写出主函数,原创 2020-12-24 16:41:17 · 89 阅读 · 1 评论 -
贪心算法
最优服务次序问题。 问题描述:设有n个顾客同时等待一项服务,顾客i需要的服务时间为ti,(1<=i<=n)。应如何安排n个顾客的服务次序才能使平均等待时间达到最小?(平均等待时间是n个顾客等待服务时间总和除以n) 输入:第一行为一个正整数n,表示有n个顾客 第二行为n个正整数,表示n个顾客需要的服务时间 输出:最小平均等待时间。 #include <iostream> #include <algorithm> using namespace std; double a.原创 2020-12-12 22:35:40 · 224 阅读 · 0 评论 -
递归与分治
1.Fibonacci数列 无穷数列1,1,2,3,5,8,13,21,34,55,……,称为Fibonacci数列。它可以递归地定义为: 第n个Fibonacci数可递归地计算如下: int fibonacci(int n) { if (n <= 1) return 1; return fibonacci(n-1)+fibonacci(n-2); } 编写完整的主函数,分别记录利用上述递归函数求第47, 48, 49, 50, 51,52个Fibonacci数所花费的时间。 #include&l原创 2020-12-09 23:00:47 · 76 阅读 · 0 评论