04 2023 档案
摘要:趣味题 谁先倒 划拳是古老中国酒文化的一个有趣的组成部分。酒桌上两人划拳的方法为:每人口中喊出一个数字,同时用手比划出一个数字。如果谁比划出的数字正好等于两人喊出的数字之和,谁就输了,输家罚一杯酒。两人同赢或两人同输则继续下一轮,直到唯一的赢家出现。 下面给出甲、乙两人的酒量(最多能喝多少杯不倒)和
阅读全文
摘要:二分查找 作为一个比较重要的算法 比如 对一个升序序列 1 2 3 4 5 6 7; 想要知道 某一个数 的位置 或者是下标 第一步 设立 左 中 右 int left ,mid,right; 让左中右分别指向 左边 中间 右边 left=0,right=7,mid =(left+right)/2
阅读全文
摘要:冒泡排序 是对一个无序数列 变为 有序 冒泡排序的思想是 从前到后 逐对比较, 不符合排序 就进行一次交换操作 对 n 个数来说 最坏的情况是进行 n*(n-1)/2次操作 源代码: #include <iostream>using namespace std; int n;int main(){
阅读全文
摘要:个位数统计 给定一个 k 位整数 N=dk−110k−1+⋯+d1101+d0 (0≤di≤9, i=0,⋯,k−1, dk−1>0),请编写程序统计每种不同的个位数字出现的次数。 例如:给定 N=100311,则有 2 个 0,3 个 1,和 1 个 3。 对 N 中每一种不同的个位数字
阅读全文
摘要:银行利率问题 原先的顺序: 第n-1年本金=本金*利率*时间+本金-1000 第五年刚好取完 源代码 #include <iostream>int main(){ float rate =0.0063; float ben=0; int months=12; for(int i=0;i<5;i++)
阅读全文
摘要:问题描述: 给定一个长度为n的数组,找出其中的最大元素和最小元素的差值。假设数组中的元素范围为[-10000, 10000]。 设计思路:1. 直接排序,取出最大值和最小值,计算其差值;2. 遍历数组,同时维护最大值和最小值,最后计算其差值。 程序流程图:1. 直接排序,取出最大值和最小值,计算其差
阅读全文
摘要:源代码 #include <iostream>#include <math.h>using namespace std;float fun(float a,float b,float c,float d){ float x0,x1=1.5,f,fd,h; do{ f=x0*x0*x0+b*x0*x0
阅读全文
摘要:浅谈递归 经典问题 斐波那契数列 1 1 2 3 5 8 13 21 ..... ai=a(i-1)+a(i-2); 其实递归问题都可以想象成树状图 #include <iostream>using namespace std;int fun(int i);//古典的斐波那契数列 //兔子 每三个月
阅读全文
摘要:肇事车牌 简单的方程问题 每一位车牌号 是0~9 #include <iostream>using namespace std;int main(){ int a1,a2,a3,a4; for(int a1=0;a1<=9;a1++){//for 循环 控制第一位数 a2=a1;//第一位与第二位相
阅读全文
摘要:打鱼还是晒网 核心部分 计算1990年1月1日 到指定某天的有多少天 int year month day 1.首先 输入指定日期 算出相隔年数 y=year-1990 int DAY 要考虑其中的是否含闰年,并含几个闰年。 for(int i=0;i<=y;i++){ 如果 1990+i是闰年 则
阅读全文
摘要:源代码 #include <iostream>using namespace std;int main(){ //数学上排列问题 A53 for(int i=1;i<=5;i++){ for(int j=1;j<=5;j++){ for(int k=1;k<=5;k++){ if(i!=j&&i!=
阅读全文
摘要:百钱百鸡问题 源代码 #include <iostream>using namespace std;int main(){ //百钱百鸡 int cock,hen, child;//公鸡5钱,母鸡 三钱,3小鸡 1钱。 //三重循环 遍历 for(cock=0;cock<=20;cock++)//限
阅读全文