![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
机试
岚匀
一只想转码农的土木狗
展开
-
【机试练习】【C++】三种方式交换两数
using namespace std;# include <cstdio>// 使用指针交换两个值void change(int *a , int *b){ int tmp = *b; *b = *a; *a = tmp;}// 使用指针的引用交换两个指针 void changePoint(int *&a, int *&b){...原创 2018-07-23 20:42:14 · 274 阅读 · 0 评论 -
【机试练习】【C++】【PAT A1053】Path of Equal Weight(玄学一样的“段错误”)
此题有较大的玄学,如果将cmp函数的默认返回值更改为true,则会出现最后一个测试用例的“段错误”。在代码中以“我的天!!!玄学”标识出#include<cstdio>#include<vector>#include<algorithm>using namespace std;struct Node{ int weight; vector<...原创 2018-10-19 20:58:45 · 886 阅读 · 5 评论 -
【机试练习】【C++】【Codeup 5978】【递归入门】走迷宫
#include<cstdio>#include<vector>#include<cstring>// http://codeup.cn/problem.php?cid=100000608&pid=5using namespace std;struct Point{ int x = -1; int y = -1; }; vector...原创 2019-05-26 15:33:42 · 386 阅读 · 0 评论 -
【机试练习】【C++】【PAT A1053】Path of Equal Weight
同样思路使用两种不同的编码实现。#include<cstdio>#include<vector>#include<algorithm>using namespace std;struct Node{ int weight; vector<int> child;};Node t[1010];vector<vector<...原创 2019-06-12 19:49:26 · 295 阅读 · 0 评论 -
【机试练习】【C++】【codeup 5997】【宽搜入门】8数码难题
参考:https://blog.csdn.net/weirdo_coder/article/details/89167900并给出了自己的一些更改,提高了可读性,降低了算法效率。#include<cstdio>#include<map> #include<algorithm>#include<queue>using namespace s...原创 2019-06-07 16:27:05 · 286 阅读 · 0 评论 -
【机试练习】【C++】codeup 问题 A: 复原二叉树
http://codeup.cn/problem.php?cid=100000611&pid=0#include<iostream>#include<cstdio>#include<cstring>#include<string>#include<vector> using namespace std;// 建立树...原创 2019-06-10 11:17:52 · 232 阅读 · 0 评论 -
【机试练习】【C++】【PAT A1034 Head of a Gang】
#include<iostream>#include<climits>#include<map>#include<algorithm>using namespace std;const int MAXN = 2010;// 一行两个人 一共1000行 那总共可能就有两千人 int N = 0, K = 0;// 此题正向和反向的边权值...原创 2019-07-08 15:41:23 · 229 阅读 · 0 评论 -
【机试练习】【C++】【codeup 1173 Problem A】算法9-9~9-12:平衡二叉树的基本操作
#include<cstdio>#include<cstring>#include<string>#include<vector>#include<algorithm>using namespace std;struct node{ int data = -1; int height = 1; node* lchild...原创 2019-06-24 21:13:22 · 315 阅读 · 0 评论 -
【机试练习】【C++】【PTA A1076 Forwards on Weibo】
#include<cstdio>#include<vector>#include<algorithm>#include<queue>using namespace std;const int MAXN = 1010;// 邻接表表示的图 vector<int> adj[MAXN]; // 这个邻接矩阵正好反着,表明谁的关...原创 2019-07-09 11:25:39 · 217 阅读 · 0 评论 -
【机试练习】【C++】堆练习
#include<cstdio>#include<algorithm>// for test#include<queue>using namespace std;// 学习堆的代码// 建立堆// 堆使用数组表示 const int maxn = 100;// 0 不存储元素,1开始存储元素// i * 2 为左孩子, i * 2 + 1...原创 2019-07-04 16:41:40 · 183 阅读 · 0 评论 -
【机试练习】【C++】【codeup 问题 B: 序列合并】
手写堆解法:#include<cstdio>#include<algorithm>using namespace std;const int maxn = 100100;int a[maxn] = {-1}; // 数组A int b[maxn] = {-1}; // 数组Bint heap[maxn]; int n = 0;int N = 0; v...原创 2019-07-04 20:13:44 · 268 阅读 · 0 评论 -
【机试练习】【C++】【PAT A1020】Tree Traversals
树的遍历常考,此题考根据后续遍历和中序遍历求二叉树,之后输出其层次遍历。这种题以选择题出题较简单,但机试题求解可能会有一些边界条件。#include&lt;cstdio&gt;#include&lt;queue&gt;using namespace std;struct Node{ int data; //int level; // 因为题目要求层次遍历,所以添加这个东西 No...原创 2018-10-10 11:24:59 · 200 阅读 · 0 评论 -
【机试练习】【C++】【PAT A1052】Linked List Sorting
此题最坑的,就是特殊情况太多,正常人考虑不到。正常人思维最多拿三个点,之后的三个都是外星人需要拿的点。#include&lt;cstdio&gt;#include&lt;algorithm&gt;#include&lt;iostream&gt;using namespace std;// 针对本题的静态链表的结构struct Node{ bool exist; int da原创 2018-10-04 20:14:49 · 250 阅读 · 0 评论 -
【机试练习】【C++】【PAT A1032】Sharing
此题考静态链表的知识点,注意在链表的数据域中加入一个是否遍历过的bool位#include&amp;lt;cstdio&amp;gt;using namespace std;// 应用静态链表struct Node{ char data; int next; bool isFirst; Node(){ data = ' '; next = -1; isFirst = false; ...原创 2018-10-04 19:04:16 · 269 阅读 · 0 评论 -
【机试练习】结构体练习
using namespace std;# include <cstdio>struct Point{ int x, y; Point(){ } Point(int _x, int _y): x(_x), y(_y){ }}pt[20];int main(int argc, char** argv) { int num = ...原创 2018-07-23 20:55:57 · 500 阅读 · 0 评论 -
【机试练习】【C++】CCFCSP201803-1跳一跳
# include<cstdio>using namespace std;int main(int argc, char** argv) { int now = -1; // 获取当前跳跃结果 int cnt = 0; // 计算总分 int combo = 0; // 计算连续得分 // ACM常用的输入套路 while(scanf("%d...原创 2018-08-14 20:53:02 · 487 阅读 · 0 评论 -
【机试练习】【C++】CCFCSP201803-2碰撞的小球
/*问题描述 数轴上有一条长度为L(L为偶数)的线段,左端点在原点,右端点在坐标L处。有n个不计体积的小球在线段上,开始时所有的小球都处在偶数坐标上,速度方向向右,速度大小为1单位长度每秒。 当小球到达线段的端点(左端点或右端点)的时候,会立即向相反的方向移动,速度大小仍然为原来大小。 当两个小球撞到一起的时候,两个小球会分别向与自己原来移动的方向相反的方向,以原来的速度大小继续...原创 2018-08-16 20:35:33 · 296 阅读 · 0 评论 -
【机试练习】【C++】CCFCSP201703-2学生排队
/*试题编号: 201703-2试题名称: 学生排队时间限制: 1.0s内存限制: 256.0MB问题描述 体育老师小明要将自己班上的学生按顺序排队。他首先让学生按学号从小到大的顺序排成一排,学号小的排在前面,然后进行多次调整。一次调整小明可能让一位同学出队,向前或者向后移动一段距离后再插入队列。 例如,下面给出了一组移动的例子,例子中学生的人数为8人。 0)...原创 2018-08-16 20:39:29 · 482 阅读 · 0 评论 -
【机试练习】【C++】【PAT】B1020 月饼
# include<cstdio># include<vector># include<algorithm>using namespace std;class Mooncake{ private: double singlePrice = -1.0; double store = -1.0; ...原创 2018-09-04 09:13:39 · 310 阅读 · 0 评论 -
【机试练习】【C++】二分
# include&amp;lt;cstdio&amp;gt;using namespace std;int sampleArray[7] = {1, 2, 3, 3, 3, 5, 6};int binarySearch(int sa[], int target, int left, int right){ int mid = - 1; while(left &amp;lt;= right){...原创 2018-09-09 20:30:27 · 195 阅读 · 0 评论 -
【机试练习】【C++】快速幂
#include<cstdio>// 快速幂,计算(a ^ b) % m 递归写法 long long binaryPow(long long a, long long b, long long m){ // b 为 0 ,返回一个1 if(b == 0){ return 1; } // b 为奇数,分离一个乘幂 // if(b % 2 == 1){ if(b ...原创 2018-09-23 17:39:08 · 252 阅读 · 0 评论 -
【机试练习】【C++】高精度/大整数运算
#include&amp;lt;cstdio&amp;gt;#include&amp;lt;cstring&amp;gt;#include&amp;lt;cmath&amp;gt;using namespace std;const int MAXLEN = 10000; // 最大支持数值长度 struct Bign{ int d[MAXLEN]; int len; B原创 2018-09-19 20:54:01 · 233 阅读 · 0 评论 -
【机试练习】【C++】随机选择算法
/* 随机选择算法的实现 */#include<cstdio>#include<ctime>#include<cstdlib>#include<cmath>#include<algorithm>using namespace std;// 随机划分算法 : 随机选择主元,对A中left right 进行划分 int...原创 2018-09-25 16:04:59 · 1690 阅读 · 0 评论 -
【机试练习】【C++】【codeup 1918】简单计算器
编写机试C++代码时,要注意封装的粒度。何种粒度的操作应该封装入函数中,何种粒度应该暴露在外面形成流畅的逻辑。本文非常注意这一点,在main函数中的操作都是重复和类似的,而将更加细粒度的操作封装入函数中。#include&lt;cstdio&gt;#include&lt;iostream&gt;#include&lt;string&gt;#include&lt;stack&原创 2018-10-04 13:00:54 · 953 阅读 · 0 评论 -
【机试练习】【C++】【codeup 2432求最长公共子串(串)】
/** *2432: 求最长公共子串(串) *题目描述 *求采用顺序结构存储的串s和串t的一个最长公共子串,若没有则输出false,若最长的有多个则输出最先出现的那一串。 *输入 *输入两个字符串 *输出 *输出公共子串 *样例输入 *abcdef *adbcef *样例输出 *bc */#include<iostream>#include<s...原创 2019-07-15 18:35:05 · 578 阅读 · 0 评论