- 博客(21)
- 收藏
- 关注
原创 [DFS]-棋盘问题[详解]
在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别。要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放 kk 个棋子的所有可行的摆放方案数目 CC。
2024-10-27 15:36:58
517
原创 [带详解]洛谷P1596 洪水灌溉问题[DFS]Lake Counting S
【代码】[带详解]洛谷P1596 洪水灌溉问题[DFS]Lake Counting S。
2024-10-27 12:56:30
211
原创 深度优先算法(DFS)洛谷P1683-入门
虽然洛谷是有题解的,但是你如果直接看得懂题解,你也不会来看这篇文章..这些代码均是我记录自身成长的记录,有写的不好的地方请谅解!先上代码:开始来一步步解析做法:1.建立数组g[N][N],为什么N=30? 因为题目中给出了范围要求,而我的N=30会比题目大一些,防止莫名其妙的问题.2.为什么选用char类型数组,请看题目给出的样例,他就是一个个字符...3.scanf("%s", g[i]);如何解释这一行代码? 注意,我的for循环i是从0开始到n-1的,这么做是可以直接根据样例输入数据的.4.注意
2024-10-26 23:09:25
1211
原创 打印空心三角形
把一个字符三角形掏空,就能节省材料成本,减轻重量,但关键是为了追求另一种视觉效果。在设计的过程中,需要给出各种花纹的材料和大小尺寸的三角形样板,通过电脑临时做出来,以便看看效果。每行包含一个字符和一个整数n(0<n<41),不同的字符表示不同的花纹,整数n表示等腰三角形的高。显然其底边长为2n-1。如果遇到@字符,则表示所做出来的样板三角形已经够了。每个样板三角形之间应空上一行,三角形的中间为空。显然行末没有多余的空格。打印空心三角形 , 主要就是 中间的空心 可以通过循环添加空心就行。
2024-10-09 13:45:00
464
原创 打印点常见图形
===================三角形===============================================正方形===============================================倒立三角形============================================等腰梯形============================================平行四边形(1)===================
2024-10-07 10:58:47
342
原创 蓝桥杯 第十五届省赛真题-好数
思路:历遍所有你需要的数字通过 %10 获得末位的数字 来判断再通过 /=10 把数字进一步加工 来得出结论//蓝桥杯2024 好数#include <iostream>#include <string>#include <vector>using namespace std;int main(){ int n; cin >> n; int daan = 0; for (int i = 1; i <= n; i++) { //历遍这个 bool
2024-09-26 21:03:45
326
原创 蓝桥杯2024 B组-最小字符串
给定一个长度为 N 且只包含小写字母的字符串 S,和 M 个小写字母c1, c2, . . . , cM。现在你要把 M 个小写字母全部插入到字符串 S 中,每个小写字母都可以插入到任意位置。请问能得到的字典序最小的字符串是什么?
2024-09-24 21:53:48
1602
原创 PTA L1-095 分寝室 分数 20 C++(g++)
i++) { // 通过计算最小人数差 和记录它的位置 与下文的cout 对应的,到时候直接拿来输出就行,上文创建的三个一维数组它们是同体系的,位置通用,直接拿来用就行.if (temp_c > 0) { // 进一步确定,因为我们是以女生最大为起点,所以男生中可能会出现错误条件,即负数.if (a % i == 0 && b % (c - (a / i)) == 0) { //这是符合的条件。if (temp_a.size() == 0) { // 容器内没东西,所以为无解。
2024-09-08 14:42:45
1599
原创 PTA L1-072 刮刮彩票分数 20分 (一维做法) C++(g++)
else if (fx == 7) { // 主对角线 在一维的关系中就是二维3x3中换算的0 4 8 的+4关系。// 位从0始计,记录0的位置。if (fx >= 1 && fx
2024-09-06 15:57:02
1002
原创 L1-031 到底是不是太胖了分数 10 C++(g++)
其中 “|” 符号是绝对值的意思,但是我们实际在运算这个绝对值的时候不应该使用abs来取,而应该使用fabs (单精度的绝对值).即 | 真实体重 − 标准体重 | < 标准体重×10%
2024-09-05 16:03:53
228
原创 PTA L1-048 矩阵A乘以B (15 分) 一维数组做法(C++{g++})
1 2 34 5 6这是一个 2行3列矩阵7 8 9 05 6 7 8这是一个 3行4列矩阵 因为 矩阵A的列=矩阵B的行 所以匹配成功.而输出的 20 22 24....如何得出?A[0][0]∗B[0][0]+A[0][1]∗B[1][0]+A[0][2]∗B[2][0]=1∗7+2∗(−1)+3∗5=7−2+15=20 这就是第一个结果如何得出的公式,照样下推即可.但是本题的标签中我加了一维数组做法,所以我们要用一维数组来解这题,代码如下:int a, b;
2024-09-04 17:06:04
969
原创 PTA 的 L1-087 机工士姆斯塔迪奥 (20分)C++(g++)
接下来 Q 行,每行两个数 Ti,Ci,其中 Ti=0 表示 BOSS 选择的是一整行,Ti=1 表示选择的是一整列,Ci 为选择的行号/列号。行和列的编号均从 1 开始。输入第一行是三个整数 N,M,Q (1≤N×M≤105,0≤Q≤1000),表示地图为 N 行 M 列大小以及选择的行/列数量。输出一个数,表示安全格子的数量。
2024-09-03 16:15:31
824
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人