简单学习日常
Anxdada
多读书多看报, 少吃零食多睡觉
展开
-
最常见的进制之间的转化
1.首先是二进制,八进制,十六进制转十进制.每一个进制(二进制,八进制,十六进制)的从右往左数,第一位的权值就是对应进制的0次方,第二位的权值就是对应进制的二次方,以此类推,然后对应位的数乘以对应位的权值再相加起来就是该进制对应的十进制的数是多少.例:十六进制2AF5换算成十进制:用竖式计算:第0位: 5 * 16^0 = 5第1位: F * 16^1 = 240第2位: A * 16原创 2017-06-21 13:34:36 · 977 阅读 · 0 评论 -
蓝桥杯省赛A组 C/C++ 部分题解说明(填坑待补)
第七题:const int maxn = 50+5;struct node { int id, d, x; bool operator < (const node& _) const { return x < _.x; }}a[maxn];void solve(){ int n; while(cin >> n) { fo原创 2018-03-04 21:40:55 · 236 阅读 · 0 评论 -
计蒜客 2018 蓝桥杯省赛 B 组模拟赛(一)题解
传送门 A: 直接暴力跑答案 ans = 1;B: 还是暴力算模拟一遍即可 ans = 571;C: 这道题还是暴力算有多少个满足条件的即可, 就是模拟的时候有点恶心, 要考虑到边界情况即可. AC Codeconst int maxn = 1e5+5;void solve(){ int ans = 0; for (int i = 100 ; i <= 100000 ;原创 2018-03-22 20:45:02 · 897 阅读 · 0 评论 -
天梯赛 L2 - 007 家庭房产 【并查集】
传送门 // 题意: 题意就不多说了. 直接开讲思路.首先有一个家族关系, 那么肯定这个要用并查集维护, 然后家庭人数就是集合的size, 也比较好维护, 比较难做的点是维护集合中每一个点有房产的, 所以对于这种题, 就不要再用下标从1开始累加他们了, 直接用下标来代替他们的编号, 因为这个编号范围很小, 我们可以直接枚举所有在这个范围内的点, 这种题都是这种套路, 记好了! 然后就是标记出现过的原创 2018-03-26 19:16:10 · 334 阅读 · 0 评论 -
天梯赛 L2-002 链表去重 和 L2-022 重排链表
L2-002 L2-022 把链表一类的放在一起写好一点….对于链表一类的题目都用一个结构体去表示一个结点, 并且遍历的时候都是通过遍历当前的编号来的, 不要用遍历下一个编号之类的来做. 然后结点中要维护好哪些值就在结构体中添加哪些值即可, 最常见的就是值和下一个节点了, 然后用好了结构体表示后就比较好写的….L2–002: 这个直接模拟做就好了, 逻辑清晰点……AC Codeconst int原创 2018-03-26 19:26:06 · 268 阅读 · 0 评论 -
天梯模拟赛 L1 - 03 宇宙无敌加法器 【模拟加法】
L1-3 宇宙无敌加法器(20 分)地球人习惯使用十进制数,并且默认一个数字的每一位都是十进制的。而在 PAT 星人开挂的世界里,每个数字的每一位都是不同进制的,这种神奇的数字称为“PAT数”。每个 PAT 星人都必须熟记各位数字的进制表,例如“……0527”就表示最低位是 7 进制数、第 2 位是 2 进制数、第 3 位是 5 进制数、第 4 位是 10 进制数,等等。每一位的进制 d 或者是 0原创 2018-03-26 19:33:48 · 315 阅读 · 0 评论 -
天梯赛 L3 - 015 球队“食物链” 【dfs + 剪枝】
传送门 题意不多说.思路: 这个问题很明显的是哈密顿回路的版本, 而哈密顿回路是个NP问题, 用dfs当然可以出答案, 但是点不能太多, 这个题目20个点, 再加上剪枝就可以过了. 所以首先确定我们的想法就是dfs. 我们首先知道的是如果存在食物链, 那么肯定要从1开始搜是最优的. 其次是要字典序最小, 那么肯定下一个要遍历的点的编号尽量的小最好. 所以建好了图以后要对每个点可以到达的点排个序.原创 2018-03-26 21:00:17 · 247 阅读 · 0 评论 -
计蒜客 蓝桥杯模拟赛5 B组 部分题解
传送门 D: 快速幂, 理解到原理, 然后写个2, 2判断下应该怎么走即可ans: int res = pw(x, y>>1, p) * pw(x, y>>1, p) % p;E: 因为产生0的原因只能值2 和 5的结合, 有一个结合就会多一个零, 但是我们可以注意到2的数量比5的多很多, 所以直接数n!的阶乘会产生多少个5即可…..ans: ans += n...原创 2018-03-29 00:02:02 · 296 阅读 · 0 评论 -
markdown编辑器的一些语法实例
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B斜体 Ctrl + I ...原创 2018-05-18 15:01:33 · 192 阅读 · 0 评论 -
2015 年 蓝桥杯 A 组 C/C++ 第十题 灾后重建 【最小生成树 + LCA倍增 + 线段树维护区间max】
交题地址 详细复杂度做法解释 这是hard版本的. AC Codeconst int maxn = 5e4+5;const int maxm = 2e5 + 5;int up[maxn][23], maxx[maxn][23];int deep[maxn], dis[maxn];int cnt, head[maxn];int n, m, q;struct node { in原创 2018-03-11 15:29:11 · 1351 阅读 · 0 评论 -
2017 CCCC 决赛 L1 - 01 二叉搜索树的结构 【二叉搜索树的考察】
传送门 // 这个要求有点多, 自己看题面就好了.思路: 首先这个n很大, 所以不能下标法建立二叉搜索树, 我们考虑用指针或者map来建树. 由于mao更简单我就选择用map来建树, map建树是根据权值来建的, 即用map的下标就代表了这个权值, 然后我们需要维护什么就在map对应标记的结构体中加什么, 然后建的过程就一直比较对应的权值即可, 这种方法真是的是又好写, 又方便(一定要记住!...原创 2018-03-03 20:09:50 · 303 阅读 · 0 评论 -
C语言一些最基本的排序知识
1: 选择排序#include<stdio.h>#include<algorithm>using namespace std;int main(){ int a[10]; int i,j,minn; for(i=0;i<10;i++) scanf("%d",&a[i]); for(i=0;i<9;i++){ minn=i;原创 2017-06-23 10:06:14 · 347 阅读 · 0 评论 -
C语言链表最全操作
struct node { int num; struct node *next; }; /*1: 创建链表. */struct node *creat(){ struct node *p1,*p2,*head=NULL; while(1){ p1=(struct node *)malloc(sizeof(struct node));原创 2017-06-23 10:06:26 · 380 阅读 · 0 评论 -
一些数学函数的使用方法(持续更新)
三角函数: sin() 函数用来求给定值的正弦值,其原型为: double sin(double x);【参数】给定的值(弧度)。【返回值】返回-1 至1 之间的计算结果。弧度与角度的关系为:弧度 = 角度*π/180;角度 = 弧度*180/π; 使用 rtod() 函数可以将弧度值转换为角度值。1.弧度(直接键入弧度)main(){ float x,a,b;原创 2017-09-05 14:25:22 · 629 阅读 · 0 评论 -
头文件
/** @Cain*/#include <cstdio>#include <cmath>#include <cstring>#include <algorithm>#include <iostream>#include <queue>#include <stack>#include <vector>#include <map>#include <set>#include <bi原创 2017-09-18 22:52:57 · 440 阅读 · 0 评论 -
欢迎使用CSDN-markdown编辑器
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B斜体 Ctrl + I 引用 Ctrl +原创 2017-10-08 20:17:43 · 215 阅读 · 0 评论 -
QT 入门学习博客
总的学习博客Qt入门-QPushButtonQt入门-调色板QPalette类用法详解Qt入门-QFontQT入门 - QLaelQT入门 - QLineEditQT入门 -原创 2017-11-12 16:49:09 · 671 阅读 · 0 评论 -
数据结构 之 8中常用排序
#include <bits/stdc++.h>using namespace std;const int maxn = 20;int a[maxn], b[maxn], n;int cnt; //比较次数void PrintSequence(int *s) { for (int i = 1 ; i <= n ; i++) { printf("%d%c", s[i]原创 2017-12-06 00:54:01 · 403 阅读 · 0 评论 -
【4C练习题】一元多项式的乘法与加法运算(20 分)
传送门 // 感觉这道题还是挺坑的, 做法当然是模拟来做. 就是可能有一个点大家没理解清楚, 那就是说的系数为0的项不进行输出, 如果最后没有项, 那么在输出零多项式(即 0, 0), 剩下的做法就是模拟题意来做多项式加法和乘法就是了.AC Code#include <bits/stdc++.h>using namespace std;#define fi first#define se s原创 2018-02-01 22:06:26 · 506 阅读 · 0 评论 -
2017 CCCC 决赛 L1 - 6 整除光棍 【模拟】
传送门 // 题意: 就是给定一个<1000的正整数n, 找到一个一个全由1组成的数使得可以整除这个给定的数. 输出整除的结果以及这个数的位数.思路: 当然用Java就很简单了. 但是有点烦, 说说C++的做法, 因为最后的那个数全由1组成, 我们只是要求商的结果, 所以我们可以模拟一个除法来做, 即我们每次增加一位数, 然后判定是否可以商数, 即是否整除不是0, 有的话就累加起来, 并且之后原创 2018-03-03 18:29:32 · 946 阅读 · 0 评论 -
2018年CCCC比赛L1 天梯赛座位分配
题目地址这道题巨坑啊,当时卡了好久还是没得全分,主要有两个坑点.1: 只有一个学校的时候, 此时就是直接从1开始+2插就行2: 最坑的还是,题目说的是只剩一所学校的时候, 该所学校的人要分开坐, 样例刚好是第二所学校结束,也就是最后一个编号是80,所以下一个是82开始, 但是如果最后一所学校的最后一个以有编号的是79, 那么只有该所学校时,第一个人员的编号时81 !!!, 也就是我们需要判断...原创 2019-02-26 00:19:03 · 381 阅读 · 0 评论