
C语言程序设计与算法
梦里1米8
大模型,C语言,Python,知识图谱
展开
-
C语言 动态规划——最长上升子序列
问题描述一个数的序列ai,当a1 < a2 < … < as的时候,我们称这个序列是上升的。对于给定的一个序列(a1, a2, … aN),我们可以得到一些上升的子序列(a1a…a;x),这里1<=i1<i2<…<iK<= N。比如,对于序列(1, 7,3, 5, 9, 4, 8),有它的- -些上升子序列,如(1, 7), (3, 4, 8)等等。这些子序列中最长的长度是4,比如子序列(1,3, 5, 8).你的任务,就是对于给定的序列,求出最原创 2022-04-07 10:38:10 · 4061 阅读 · 3 评论 -
C语言 动态规划——数字三角形
题描述73 88 1 02 7 4 44 5 2 6 5在上面的数字三角形中寻找一条从顶部到底边的路径,使得路径上所经过的数字之和最大。路径上的每一步都只能往左 下或右下走。只需要求出这个最大和即可,不必给出具体路径。输入格式:5//三角形行数。下面是三角形73 88 1 02 7 4 44 5 2 6 5要求输出最大和#include<stdio.h>int n;int a[101][101]; //存储初始数字 int main(){ scanf原创 2022-04-06 20:38:33 · 2784 阅读 · 0 评论 -
C语言 蓝桥杯 备战笔记——快速幂
C语言 算法笔记快速幂1 取模(求余)1.1 数据溢出1.2 判断奇偶2 快速幂2.1 分治法2.2 快速幂(幂次、二进制)贪心快速幂1 取模(求余)1.1 数据溢出计算2022^2022的后四位#include<stdio.h>int main(){ int a = 1; int i; for(i=0;i<2022;i++) { a = a*2022%10000; } printf("%d",a); return 0;}1.2 判断奇偶x%2==0原创 2022-04-02 18:47:26 · 1007 阅读 · 0 评论 -
C语言 递归——n皇后
递归递归和普通函数调用一样都是用栈来实现的。递归的作用代替多重循环将问题分解为规模更小的子问题再求解解决本来就是用递归形式定义的问题汉诺塔题目:古代有一个梵塔,塔内有三个座A、B、C,A座上有64个盘子。盘子大小不等,大的在下,小的在上。有一个和尚想把这64个盘子从A座移到C座,但每次只能允许移动一个盘子,并且在移动过程中,3个座上的盘子,始终保持大盘在下,小盘在上。在移动过程中可以利用B座,要求输出移动 的步骤。代码在这里插入代码片...原创 2022-03-25 14:29:33 · 1845 阅读 · 0 评论 -
C语言 枚举——熄灯问题
题目:有一个由按钮组成的矩阵,其中每行有6个按钮,共5行。每个按钮的位置上有一 盏灯,当按下一个按钮后,该按钮以及周围位置(上边,下边,左边,右边)的灯都会改变状态。(如果灯原来是点亮的,就会被熄灭。如果灯原来是熄灭的,则会被点亮)分析:●在矩阵角上的按钮改变3盏灯的状态●在矩阵边上的按钮改变4盏灯的状态●其他的按钮改变5盏灯的状态●与一盏灯毗邻的多个按钮被按下时,一个操作会抵消另一次操作的结果要求:给定矩阵中每盏灯的初始状态,求一种按按钮方案,使得所有的灯都熄灭输入:原创 2022-03-20 15:53:48 · 3213 阅读 · 1 评论 -
C语言 枚举——称硬币
例1:称硬币有12枚硬币。其中有11枚真币和1枚假币。假币和真币重量不同,但不知道假币比真币轻还是重。现在, 用一架天平称了这些币三次,告诉你称的结果,请你找出假币并且确定假币是轻是重(数据保证一定能找出来)。要求:样例分析:解题思路:对于每一枚硬币先假设它是轻的,看这样是否符合称量结果。如果符合,问题即解决。如果不符合就假设它是重的,看是否符合称量结果。把所有硬币都试一遍,一定能找到特殊硬币...原创 2022-03-19 15:30:57 · 1825 阅读 · 1 评论 -
c语言 枚举——完美立方、生理周期
例1:完美立方形如a^3 = b^3 + c^3 + d^3的等式被称为完美立方等式。例如123=63 +83 +103。编写一个程序,对任给的正整数N(N≤100),寻找所有的四元组(a,b, c d),使得a^3 = b^3 + c^3 + d^3,其中a, b, c,d 大于1,小于等于N,且b<=c<=d。要求:输入一个正整数N (N≤100)。输出每行输出一个完美立方。输出格式为: Cube = a, Triple = (b,c, d)其中a,b,c,d所在位置原创 2022-03-18 16:52:03 · 2028 阅读 · 0 评论