- 博客(24)
- 收藏
- 关注
原创 1001 A+B Format (20 分)
#include <bits/stdc++.h>using namespace std;int main(){ int a,b; cin>>a>>b; int m = a+b; int n = abs(m); int num; vector<char> s; s.erase(s.begin(),s.end()); int cnt = 0; while(n!=0) {
2021-08-28 19:05:38
200
原创 UVA816 Abbott的复仇 Abbott‘s Revenge
这个题是一个很经典的BFS求图最短路的问题,复杂一点的就是加了个朝向。这个题细节很多而且输出格式巨坑。贴AC代码,解释都在注释里#include <bits/stdc++.h>using namespace std;const int maxn = 10;int d[maxn][maxn][4]; // 记录初始状态到这时的长度,三个值分别为横、纵坐标、朝向string name; //迷宫名字int has_edge[maxn][maxn][4][4]; //记录某个点可以往什
2021-08-24 12:08:34
282
原创 UVA572 油田 Oil Deposits
这个题就是求无向图的连通块数量,用BFS写太长了麻烦 ,直接用DFS深搜。写完后本地过了,但交UVA上一直CE,然后把index数组的名字改成了idx就过了,慎重起名,改了1h直接贴AC代码#include <bits/stdc++.h>using namespace std;const int maxn = 10010;int idx[maxn][maxn]; // 用来记录所在某个石油所在连通块的编号char graph[maxn][maxn];int m,n;void
2021-08-18 11:34:24
221
原创 UVA839 天平 Not so Mobile
#include<bits/stdc++.h>using namespace std;const int maxn = 500;int in_order[10010], po_order[10010], lch[10010], rch[10010];int n,best,best_sum;// 主函数里要分别读中序和后续// 写个函数可以减少代码量而且符合规范bool read_input(int* arr) { string s; if (!getline(c
2021-08-17 16:04:17
135
原创 UVA679 小球下落 Dropping Balls
直接贴代码#include<bits/stdc++.h>using namespace std;int main(){ // 这个题如果直接用数组去模拟树的话,会TLE的orz // 所以直接想,是可以根据球的编号来直接进行判断的 // 直接贴代码 int num; scanf("%d",&num); int m,n; for(int p = 0; p<num; p++) { scanf("%d%d
2021-08-15 22:00:03
114
原创 UVA11988 破损的键盘
直接贴代码#include<bits/stdc++.h>using namespace std;// 试着用一下listint main(){ string s; while(cin>>s) { list<char> line; auto it = line.begin(); for (int i = 0; i<s.length(); i++) { char c =
2021-08-13 20:57:22
169
原创 LeetCode 300. 最长递增子序列
LeetCode 300. 最长递增子序列给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7] 是数组 [0,3,1,6,2,2,7] 的子序列。输入:nums = [10,9,2,5,3,7,101,18]输出:4解释:最长递增子序列是 [2,3,7,101],因此长度为 4 。输入:nums = [0,1,0,3,2,3]输出:4输入:nums = [7,7,7,7,7,
2021-06-07 19:54:35
91
原创 PAT (Top Level) Practice 1015 Letter-moving Game (35 分
Letter-moving GameHere is a simple intersting letter-moving game. The game starts with 2 strings S and T consist of lower case English letters. S and T contain the same letters but the orders might be different. In other words S can be obtained by shuffli
2021-06-07 19:05:10
138
原创 习题3.3 线性表元素的区间删除 (20分) 浙江大学数据结构
习题3.3 线性表元素的区间删除 (20分)给定一个顺序存储的线性表,请设计一个函数删除所有值大于min而且小于max的元素。删除后表中剩余元素保持顺序存储,并且相对位置不能改变。函数接口定义:List Delete( List L, ElementType minD, ElementType maxD );其中List结构定义如下:typedef int Position;typedef struct LNode *List;struct LNode { ElementType Da
2020-11-05 01:23:53
1124
原创 习题2.7 弹球距离 (15分) 浙江大学数据结构
习题2.7 弹球距离 (15分)设有一个球从高度为h米的地方落下,碰到地面后又弹到高度为原来p倍的位置,然后又落下,再弹起,再落下…。请编写函数求初始高度为h的球下落后到基本停下来(高度小于给定阈值TOL)时在空中所经过的路程总和。函数接口定义:double dist( double h, double p );其中h是球的初始高度,p是球弹起高度与弹起前落下高度的比值;函数dist要返回球下落后到基本停下来时在空中所经过的路程总和。注意:当弹起的高度小于裁判程序定义的常数TOL时,弹起的距离不计算
2020-10-30 00:07:38
4880
原创 习题2.6 递归求简单交错幂级数的部分和 (15分) 浙江大学数据结构
习题2.6 递归求简单交错幂级数的部分和 (15分)本题要求实现一个函数,计算下列简单交错幂级数的部分和:f(x,n)=x−x2 +x3−x4 +⋯+(−1)n−1xn函数接口定义:double fn( double x, int n );其中题目保证传入的n是正整数,并且输入输出都在双精度范围内。函数fn应返回上述级数的部分和。建议尝试用递归实现。裁判测试程序样例:#include <stdio.h>double fn( double x, int n )
2020-10-30 00:05:21
1018
原创 习题2.5 两个有序链表序列的合并 (15分) 浙江大学数据结构
习题2.5 两个有序链表序列的合并 (15分)本题要求实现一个函数,将两个链表表示的递增整数序列合并为一个非递减的整数序列。函数接口定义:List Merge( List L1, List L2 );其中List结构定义如下:typedef struct Node *PtrToNode;struct Node { ElementType Data; /* 存储结点数据 */ PtrToNode Next; /* 指向下一个结点的指针 */};typedef PtrToN
2020-10-30 00:01:24
1515
原创 习题2.4 递增的整数序列链表的插入 (15分) 浙江大学数据结构
习题2.4 递增的整数序列链表的插入 (15分)本题要求实现一个函数,在递增的整数序列链表(带头结点)中插入一个新整数,并保持该序列的有序性。函数接口定义:List Insert( List L, ElementType X );其中List结构定义如下:typedef struct Node *PtrToNode;struct Node { ElementType Data; /* 存储结点数据 */ PtrToNode Next; /* 指向下一个结点的指针 */};
2020-10-29 23:57:58
1871
原创 习题1.9 有序数组的插入 (20分) 浙江大学数据结构
习题1.9 有序数组的插入 (20分)本题要求将任一给定元素插入从大到小排好序的数组中合适的位置,以保持结果依然有序。函数接口定义:bool Insert( List L, ElementType X );其中List结构定义如下:typedef int Position;typedef struct LNode *List;struct LNode { ElementType Data[MAXSIZE]; Position Last; /* 保存线性表中最后一个元素的位置
2020-10-29 23:55:30
1718
原创 习题1.8 二分查找 (20分) 浙江大学数据结构
习题1.8 二分查找 (20分)本题要求实现二分查找算法。函数接口定义:Position BinarySearch( List L, ElementType X );其中List结构定义如下:typedef int Position;typedef struct LNode List;struct LNode {ElementType Data[MAXSIZE];Position Last; / 保存线性表中最后一个元素的位置 */};L是用户传入的一个线性表,其中ElementTyp
2020-10-29 23:29:33
2509
原创 C Primer Plus第七章编程练习答案(完整版)
前段时间有事耽搁了,所以更新速度慢了很多第一题//7-1#include<stdio.h>int main(){ char ch; int sp=0; int nl=0; int other=0; while((ch=getchar()) != '#') { if(ch == ' ') sp++; else if(ch == '\n') nl+...
2020-04-23 18:53:09
2635
3
原创 求e的近似值(误差小于10^-6)
#include<stdio.h>int main(){ float e; long long n; int j,k; for(n=1; k<=1000000; n++) { for(j=1,k=1,e=1.0; j<=n; j++) { k *= j; e += 1.0/k; } } printf("The value of e ...
2020-03-28 23:14:17
5935
4
原创 回文素数
输入一个正整数m(大于10),完成以下功能1)统计正整数m的位数;2)打印输出0到m之间所有的回文素数,回文素数是指从左读与从右读是完全一样的素数#include<stdio.h>#include<math.h>int main(){ printf("Please input an integar(>10):"); int m,m1; scanf("...
2020-03-26 22:58:13
555
原创 六张卡片来猜数(哈利波特之心灵感应魔法)
哈利波特之心灵感应魔法是一种常见的儿童益智游戏。表演者首先会要求观众在心中默想一个60以内的整数,然后依次将下述卡片1到卡片6出示给观众看,并询问观众他所默想的数字是否在卡片上。在卡片出示的过程中,卡片是背对表演者的,即表演者是看不到卡片的。在听完观众的6个回答之后,表演者即可“猜”出观众默想的数字,仿佛掌握了”读心术“。#include<stdio.h>int main(){...
2020-03-26 21:37:35
24122
5
原创 C语言报错[Error] expected declaration or statement at end of input
这种情况一般有两种原因1.调用的函数没有声明2.多了大括号或者少了大括号,需要自己在程序中去慢慢寻找
2020-03-24 17:04:07
2939
原创 判断一个正整数是否是回文数
回文数问题我们怎么通过C程序去判断一个数是不是回文数呢?(回文数指数位倒置仍与原数相等,比如121就是一个回文数)#include<stdio.h>int main(){ int n,n_1,s; printf("Input the n: "); scanf("%d",&n); n_1 = n; for(s=0; n>0; ) { s = s*...
2020-03-24 16:11:07
1047
原创 C Primer Plus第六章编程练习答案(完整版)
以下代码均在Dev-C++中编译通过第一题//6.16.1#include<stdio.h>int main(){ char table[26]; int i; for(i=0;i<26;i++) table[i]='a'+i; for(i=0;i<26;i++) printf("%c",table[i]); return 0;}第二题...
2020-03-24 14:50:57
843
2
原创 浅谈scanf()函数的返回值
浅谈scanf()函数的返回值1.scanf()函数的返回值为int类型2.当为scanf(%d,&a);scanf(%c,&b);等类型时,当输入值是有效的时候,返回值为13.当为scanf("%d%d%d",&c,&x,&v);等类型时,当三个输入值是有效值时,返回值为3。当输入的前两个值有效时,返回值为2。当输入的第一个值有效时,返回值为...
2020-03-15 11:40:38
2113
原创 C Primer Plus第五章编程练习答案(完整版)
C Primer Plus 第五章编程练习答案(完整版)本人是一名计算机专业在读学生,因为网上搜到的编程答案总是题号不完整,所以附上自己写的源代码,希望能够帮到大家,如有错误希望大家指正,也可以一起讨论,蟹蟹!第一题//5.11.1#include<stdio.h>#define convert 60;int main(){ printf("Please tell us...
2020-03-10 23:15:26
1235
6
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人