- 博客(16)
- 收藏
- 关注
原创 HDU 2547无剑无我
HDU 2547 无剑无我比赛的时候确实没看出来是求两点之间的最短距离后知后觉,特来补题…题目的公式为:sqrt(x * x + y * y + m * m + n * n - 2 * m * x - 2 * n * y)就是初中见到的求两点之间的距离公式,只是被拆开了剑气伤害 = f(x, y, a, b) + f(x, y, c, d);假设A点为(x,y),B点为(a,b),C点为(c,d)把数据带入公式不难得出,其实就是求A点到B的距离加上A点到C点的距离而题目是求剑气的最小值,也就
2021-03-22 21:26:26
141
原创 杭电2156分数矩阵
题目链接:直达Problem Description我们定义如下矩阵:1/1 1/2 1/31/2 1/1 1/21/3 1/2 1/1矩阵对角线上的元素始终是1/1,对角线两边分数的分母逐个递增。请求出这个矩阵的总和。Input每行给定整数N (N<50000),表示矩阵为 N*N.当N为0时,输入结束。Output输出答案,保留2位小数。Sample Input12340Sample Output1.003.005.678.83一开始做这道题没想这么多
2020-05-16 23:15:57
409
原创 数据结构之链队的实现
先上图:说明在注释里面,一切从简,理解为主!另附灵魂画图一张:Ps:看不懂 可以自己根据代码自己画#include <stdio.h>#include <stdlib.h>#include <windows.h>typedef struct Node {//节点结构体 int data; struct Node *next;}QNode,*QNodePtr;typedef struct LinkQueue {//头尾指针结构体 QNodePtr
2020-05-13 09:10:33
265
原创 数据结构之队列的顺序存储
简单易懂版。解释在注释,代码如下:#include <stdio.h>#include <stdlib.h>#include <windows.h>#define N 10typedef struct Queue { char *base; int front;//头指针 int rear;//尾指针}Queue,*QueuePtr;void InitQueue(QueuePtr q) { q->base = (char *)malloc(s
2020-05-12 11:44:14
173
原创 数据结构之中缀表达式转后缀表达式
中缀表达式转后缀表达式的基本规则:1.遇到操作数就直接输出2.遇到左括号就压入栈中3.遇到右括号就将栈中所有符号输出且弹出(左括号只需要弹出不需要输出)4.遇到操作符就与栈顶元素进行对比①当前操作符比栈顶操作符的优先级大的话:就直接将当前操作符压入栈中②当前操作符比栈顶操作符的优先级小或者相等的话就将栈顶操作符输出且弹出,然后继续判断栈顶元素,直到栈空 或 遇到左括号ps:因为 ...
2020-04-28 13:34:24
479
原创 数据结构之单链表的实现
果然是写一次就有一次新的发现,防止忘记也忘了刚接触的小伙伴有个头绪特写了这篇单链表的文章。单链表的概念就不再多说,只实现了相应的基本操作,一切从简,从简单的方式来书写,可能会觉得比较麻烦但思路绝对清晰。如有错误欢迎指出,相应解释都放在注释里面了。#include <stdio.h>#include <stdlib.h>#include <windows.h&...
2020-04-11 21:22:06
196
原创 数据结构之顺序表的实现
俗话说,好记性不如一个烂笔头,在过了若干天之后我果然忘了顺序表的实现…以此写一篇文章,防止自己忘记也帮助刚入门的小伙伴。顺序表也就是采用一片连续的内存空间来存储相应的数据,既然是连续也就造成了空间必然有限,但带来的优点也有很多,比如操作很快,理解容易…既然时连续的内存空间,采取数组的形式是最为方便的了。顺序表的基本操作的实现还是蛮简单的,主要操作有Status List_Init(SqL...
2020-04-10 21:25:18
223
原创 顺序栈的基本操作以及实现
刚学习到了数据结构的顺序栈的储存结构,以此做个记录,防止忘记以及帮助迷的人顺序表的基本操作以及实现:Status Stack_Init(StackPtr s);//初始化栈void Stack_Destroy(StackPtr s);//销毁栈int Length_Stack(StackPtr s);//元素个数bool Stack_Empty(StackPtr s);//栈空判断**...
2020-04-10 16:01:32
1701
原创 链栈的基本操作以及实现
刚学习到数据结构的链栈,以此做个记录,防止忘记链栈主要实现功能:**Status Stack_Init(StackNodePtr s);//初始化栈void Stack_Destroy(StackNodePtr s);//销毁栈int Length_Stack(StackNodePtr s);//元素个数bool Stack_Empty(StackNodePtr s);//栈空判断St...
2020-04-10 15:42:02
614
原创 杭电2045:不容易系列之(3)—— LELE的RPG难题5
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2045很明显的能看出来这是一个找规律的题目思路分析:既然是找规律题目就需要先写出来前几项,然后再来分析先画一个图:可以看出来当格子≤3的时候 方法依次为 3 6 6很难的分析出来:第n格的颜色受第一格和第n-1格影响。当n≥4时①当第n-1格和第1格的颜色相同时,第n格的颜色就有...
2020-03-01 10:47:24
361
原创 杭电1004:Let the Balloon Rise
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1004用map做较为方便#include <iostream>#include <map>#include <string>using namespace std;int main(){ map<string, int> m; int n...
2020-02-28 23:07:33
115
原创 杭电2021题:发工资咯:)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2021第一次看到这题得时候一脸懵逼,后来研究一番发现这是一道简单的贪心。因为需要计算出至少需要多少张人民币才可以不找零所以主要思路为:若想不找零,方法肯定是1.先把较大的面额需要用多少张计算出来2.然后再用较小的面额来顶用,直到面额计算到1时。#include <stdio.h>...
2020-02-28 22:08:23
434
原创 c语言写开机自启程序
想要软件开机自启,就需要把相应的注册项写到系统的注册表中注册表的打开方法为 win+r 输入redegit 打开注册表编辑器开机自启的文件目录为HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run在这里面能看所有的开机自启的软件。而想要自己添加开机自启的软件只需要在右侧空白处右键添加字符串值即可然后在里面输入完整...
2020-02-07 10:39:04
1243
1
原创 C语言:rand取随机数用法
rand()函数会返回一个伪随机数,一般电脑开机之后就不会再改变了,所以需要srand函数来置随机数种子,这样才能保证每次取的随机数都不一样 ,而srand函数又是因为某一个值返回一个随机种子,所以一般采用时间作为值,这样保证每次取的时候都不一样#include <iostream>#include <stdlib.h>#include <time.h>...
2020-01-31 19:50:06
2314
原创 杭电2035题(较为详细)
杭电2035题看到这题显而易见第一想法是用math.h里面的pow函数,但是经过实践之后发现数据太大,用pow函数求不出来这题。所以,在每运算一次之后就对它取余(%1000,这样求的是最后三位数),如果运算之后的数值<1000那么还是当前数值,如果>1000那么会取最后三位,接下来运算就用取的三位进行运算(原数值进行运算最后三位也会不断更新,取走的三位 也会不断更新,只不过考虑溢...
2020-01-19 21:21:49
419
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人