C/C++
jacksonhhhh
这个作者很懒,什么都没留下…
展开
-
P1955 [NOI2015]程序自动分析 && 离散化学习 && lower_bound学习
P1955 [NOI2015]程序自动分析题目链接:https://www.luogu.com.cn/problem/P1955题目分析这道题是一个很显然的并查集,但是看到数据范围我们竟然需要开一个1e9的数组!那么很显然的会MLE所以我们要用到离散化然后就可以了参考代码#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>using na原创 2021-10-19 00:03:13 · 72 阅读 · 0 评论 -
P4180 严格次小生成树[BJWC2010]
题目链接:https://www.luogu.com.cn/problem/P4180题目分析所谓严格的次小是指权值严格大于最小生成树的次小生成树,我们知道一般次小生成树,只需要先用kruskal算法求得最小生成树,然后暴力枚举非树边,替换路径最大边即可。这题也可以类似思考,但有一个问题,如果最大边与当前枚举边相等时,我们不能替换,于是求其次用次小边来替换。这样我们需要求得路径上的最小边和次小边(小于最小边),于是我们可以利用LCA的倍增算法来维护。预处理过程需要考虑i -> f[i][j]与原创 2021-10-19 00:03:33 · 101 阅读 · 0 评论 -
C 库函数 - div( )
描述C 库函数 div_t div(int numer, int denom) ,把 numer(分子)除以 denom(分母)。它存在于C 标准库中声明下面是 div() 函数的声明1 div_t div(int numer, int denom)参数numer - 分子denom - 分母返回值该函数返回定义在 中的结构中的值,该结构有两个成员,如 div_t:int quot; int rem;实例下面的实例演示了 div( ) 函数的用法#include <cst原创 2021-10-18 18:15:53 · 366 阅读 · 0 评论 -
用Beep函数演绎天空之城
用Beep函数来使扬声器发出优美而又动听的音乐美哉美哉#include <iostream>#include <windows.h>using namespace std;enum fy{ d1 = 262, d1_ = 277, d2 = 294, d2_ = 311, d3 = 330, d4 = 349, d5 = 392, d5_= 415, d6 = 440, d6_= 466, d7 = 494, z1 = 523, z1_原创 2021-10-18 17:24:35 · 348 阅读 · 0 评论 -
[ACM] 有关二维字符型数组的读入
假设我们想读入n = 6的二维字符型数组#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>using namespace std;//#define DEBUG(x) cerr << #x << "=" << x << endlchar a[100][100];int main(){ int原创 2021-10-18 17:20:43 · 450 阅读 · 0 评论 -
P4994 终于结束的起点
直接根据题意循环注意开long long!下面上代码因为代码十分简单易懂就不做注释了#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>using namespace std;//#define DEBUG(x) cerr << #x << "=" << x << endlconst int ma原创 2021-10-18 17:02:46 · 42 阅读 · 0 评论 -
P1604 B进制星球
题目链接:https://www.luogu.com.cn/problem/P1604题目背景进制题目,而且还是个计算器~~题目描述话说有一天,小Z乘坐宇宙飞船,飞到一个美丽的星球。因为历史的原因,科技在这个美丽的星球上并不很发达,星球上人们普遍采用B(2<=B<=36)进制计数。星球上的人们用美味的食物招待了小Z,作为回报,小Z希望送一个能够完成B进制加法的计算器给他们。 现在小Z希望你可以帮助他,编写实现B进制加法的程序。输入格式共3行第1行:一个十进制的整数,表示进制B。第2-原创 2021-10-18 08:06:05 · 93 阅读 · 0 评论 -
C++中有关字符串的的处理
这篇博客主要介绍如何在读入字符串时速度更快以及strlen和.length()的区别以及一些小知识(没错就是很杂)壹.如何在读入字符串速度更快在读入一个字符串时,一般是只能用cin读入std::string a;int main(){ cin >> a;}想让它读的更快,就需要有一些优化std::string a;int main(){ ios::sync_with_stdio(false); cin >> a;}在C++中,为原创 2021-10-18 08:05:14 · 231 阅读 · 0 评论 -
POJ1186 方程的解数
POJ1186 方程的解数题目连接:http://poj.org/problem?id=1186Description已知一个n元高次方程:其中:x1, x2,…,xn是未知数,k1,k2,…,kn是系数,p1,p2,…pn是指数。且方程中的所有数均为整数。假设未知数1 <= xi <= M, i=1,n,求这个方程的整数解的个数。1 <= n <= 6;1 <= M <= 150。方程的整数解的个数小于231。★本题中,指数Pi(i=1,2,…,n)原创 2021-10-17 16:32:43 · 122 阅读 · 0 评论 -
C++中的读入优化 && 输出优化
直接贴代码//读入优化inline int read(){ char ch, c; int res; while (ch = getchar(), ch < '0' || ch > '9') c = ch; res = ch - 48; while (ch = getchar(), ch >= '0' && ch <= '9') res = (res << 3) + (res << 1) +原创 2021-10-17 16:20:29 · 204 阅读 · 0 评论 -
关于C & C++中关于字符串读入的一些小问题
关于C & C++中关于字符串读入的一些小问题scanf和cin是都无法在读入字符串的时候读入空格的比如说若想读入以下内容Today isMonday若这么来写代码scanf("%s\n%s", a, b);或者这么来写cin >> a >> b;那么实际输入的则是TodayMonday在读入的时候遇到空格就停止了那么我们该如何改进这个问题呢这么输入scanf("%[^\n]", a);scanf("%[^\n]", b);get原创 2021-10-17 15:53:44 · 61 阅读 · 0 评论