懒羊羊减肥计划
文章平均质量分 51
懒羊羊能有什么坏心思呢~
「已注销」
这个作者很懒,什么都没留下…
展开
-
PAT 1043 Is It a Binary Search Tree (25 分)
1043 Is It a Binary Search Tree (25 分)A Binary Search Tree (BST) is recursively defined as a binary tree which has the following properties:The left subtree of a node contains only nodes with keys less than the node's key.The right subtree of a node c.原创 2021-04-24 14:56:01 · 95 阅读 · 0 评论 -
BFS--常用模板及实际应用
1. BFS模板按层次的顺序进行遍历:void BFS(int s){ queue<int> q; q.push(s); while(){ 取出队首元素top; 访问队首元素; 将队首元素出队; 将top的下一层结点未入队的结点全部入队,并设置为已入队; }}2. 详细说明定义队列q,并将队首s入队写一个while循环,循环条件是队列q非空在while循环中,先取队首元素top,并访问它(访问:可以是任何事,比如将其输出),将其出原创 2021-04-22 14:35:09 · 140 阅读 · 0 评论 -
DFS--01背包问题
问题描述:代码:#include <cstdio>const int maxn = 30; int n , V , maxValue = 0; int w[maxn] , c[maxn]; void DFS(int index,int sumW,int sumC){ if(index == n){ return ; } DFS(index + 1 , sumW ,sumC); if(sumW + w[index] <= V){ if(sumC + c[原创 2021-04-21 21:22:01 · 84 阅读 · 0 评论 -
PAT 1052 Linked List Sorting (25 分)
1052 Linked List Sorting (25 分)A linked list consists of a series of structures, which are not necessarily adjacent in memory. We assume that each structure contains an integer key and a Next pointer to the next structure. Now given a linked list, you ar.原创 2021-04-19 16:28:06 · 58 阅读 · 0 评论 -
PAT 1032 Sharing(25分)
1032 Sharing (25 分)To store English words, one method is to use linked lists and store a word letter by letter. To save some space, we may let the words share the same sublist if they share the same suffix. For example, loading and being are stored as sh.原创 2021-04-19 14:39:41 · 78 阅读 · 0 评论 -
PAT 1060 Are They Equal (25 分)
1060 Are They Equal (25 分)If a machine can save only 3 significant digits, the float numbers 12300 and 12358.9 are considered equal since they are both saved as 0.123×1050.123\times 10^50.123×105 with simple chopping. Now given the number of significan原创 2021-04-15 17:27:07 · 67 阅读 · 0 评论 -
C语言:int &x,int* x,int *x,int**的区别
int a :一个int类型,名称叫a int* a:一个整形的指针,名称叫a int *a:一个指向整型的地址,名称叫a(一级指针,表示a所指向的地址里面存放的是一个int类型的值) int **a :二级指针,表示a所指向的地址里面存放的是一个指向int类型的指针(即a指向的地址里面存放的是一个指向int的一级指针) int & a:声明一个int引用类型,名称叫a C语言中int *a与int* a的区别: 用法上没有区别,理解上有区别。前者表示a地址指转载 2021-04-15 16:38:31 · 4632 阅读 · 2 评论 -
DEV-C++调试设置
昨天用C/C++去考了CSP,结果用DEV-C++调试总是闪退,按照我的记忆打开了调试参数,迷迷糊糊搞了一通,还是没办法调试,难受了几个小时。所以今天痛下决心,一定要写下DEV-C++设置调试的过程,警示自己!解决步骤 1.打开DevC++找到上方工具栏 2.点击选择编译选项,再按下图所示设置即可原创 2021-04-12 09:05:41 · 785 阅读 · 5 评论 -
PAT: gets’ was not declared in this scope gets(s)
PAT中使用gets函数进行读取含空格的整行字符串,在代码逻辑与实现没有问题的情况下(dev-c++下已调试),提交竟然报了编译错误。更换了编译器问题仍然存在,于是乎一百度发现了问题所在:gets()方法确实已经不被PAT编译器支持...原创 2021-03-19 18:03:58 · 1650 阅读 · 0 评论 -
PAT 1093 Count PAT‘s
1093 Count PAT's (25 分)The string APPAPT contains two PAT's as substrings. The first one is formed by the 2nd, the 4th, and the 6th characters, and the second one is formed by the 3rd, the 4th, and the 6th characters.Now given any string, you are suppo原创 2021-03-19 17:54:50 · 69 阅读 · 0 评论 -
模运算:满足分配率
因此,pow(a,b)%m可以写成:typedef long long LL;LL pow (LL a,LL b,LL m){ LL ans = 1; for (int i = 0;i < b;i++){ ans = ans * a % m; } return ans;}原创 2021-03-18 19:10:41 · 3067 阅读 · 0 评论 -
二分法:外接圆问题
问题描述:问题推导: 二分算法的的本质就是通过不断迭代使left 和 right 在固定条件下逐渐靠近真实值,符合一定误差,本题可以固定条件取为:凸多边形的外接圆的弧度为2π。代码:#include<cstdio>/*** 求弧度**/double getTotalRadian(double edges[],int n,double r){ double radian = 0.0,asinValue; for(i...原创 2021-03-18 16:58:00 · 134 阅读 · 1 评论 -
二分法:木棒切割问题
问题描述:问题模板:寻找有序序列第一个满足某条件的元素的位置://二分区间为左闭右闭的[left,right],初值必须能覆盖解的所有可能取值int solve(int left,int right){ int mid; while(left < right){ mid = (left + right)/2; if(条件成立){ right = mid; } else{原创 2021-03-18 16:46:48 · 225 阅读 · 0 评论 -
多点测试:while的写法
这里可以理解成只有 (输入没有停止) 且 (判断条件为真) 时才会继续循环,否则将跳出循环。原创 2021-03-18 14:34:41 · 126 阅读 · 0 评论 -
N皇后问题(暴力法、回溯法)
问题:n*n的棋盘上放置n个皇后,使得n个皇后不能互相攻击(不能在同一行、同一列、同一对角线上)思路(暴力):枚举1-n的全排列,判断每个全排列是否合法#include<cstdio>#include<cstring>#include<algorithm>using namespace std;int n,count1=0;int p[110];bool hashTable[110]={false};void generatep(int inde原创 2021-03-11 11:25:57 · 409 阅读 · 0 评论 -
C语言:进制转换(整数、字符串)
本文重点:常见的整型、字符串进制转换(略有不同)1、int型进制转换1.1、P进制数x转换为十进制数y实现代码如下:#include <cstdio>int main(){ int y = 0,product = 1,x,p; //x为原始数据,p为进制 scanf("%d%d",&x,&p); while(x!=0){ y = y + (x%10) * product; x = x/10; product = product * p;原创 2021-03-10 17:55:54 · 597 阅读 · 1 评论 -
PAT 1025 PAT Ranking
Programming Ability Test (PAT) is organized by the College of Computer Science and Technology of Zhejiang University. Each test is supposed to run simultaneously in several places, and the ranklists will be merged immediately after the test. Now it is your原创 2021-03-10 14:52:34 · 86 阅读 · 2 评论 -
简单插入排序
寻找插入位置与移动元素分开:void insertSortBad(int list[],int n){ for (int i=1; i<n;i++){ int num = list[i],insert = i; for(int j=i-1;j>-1;j-- ){ if( list[i] < list[j]){ insert = j; } } for(int k=i; k>insert;k--){ list[k] = list[k-1原创 2021-03-10 09:23:28 · 48 阅读 · 0 评论 -
C 语言:输入输出(对空格等特殊字符的处理)
getchar() & putchar() 函数 输入输出单个字符,可以识别并读入空格和换行符,不会终止。(等同于%c)gets() & puts() 函数 char *gets(char *str); gets() 函数就算输入的字符串中有空格也可以直接输入! 关于使用 gets() 函数需要注意:使用 gets() 时,系统会将最后“敲”的换行符从缓冲区中取出来,然后丢弃,所以缓冲区中不会遗留换行符。...原创 2021-03-07 21:41:16 · 5563 阅读 · 0 评论 -
C语言:字符数组赋值
1、定义的时候直接用字符串赋值char a[10]=“hello”; //sizeof(a)为10或char a[]=“hello”; //sizeof(a)为6注意:不能先定义再给它赋值,如char a[10]; a[10]=“hello”;这样是错误的!2、对数组中字符逐个赋值char a[10]={‘h’,‘e’,‘l’,‘l’,‘o’}; //sizeof(a)为10或char a[]={‘h’,‘e’,‘l’,‘l’,‘o’}; //sizeof(a)为53、利用strcpy原创 2021-03-07 17:32:20 · 2086 阅读 · 0 评论