虚拟赛-1总结
洛谷虚拟赛-1的总结 分数 & 排名 预期分数: $ 100+100+100+?=3?0 $ 实际分数:$ 100+100+70+40=310 $ 排名第五 分析 第一题和第二题比较简单,都对。 第三题由于使用了暴力解法,#15~#20出现了超时的现象。本来以为 $ 3000 $ 的数据范围 $ 3000 \times 3000 \times 3000=3 \times 10^9 $ 勉强能卡过(以为 $ 10^9 $ 可以在一秒内运行),可实际不能,而且 $ \gcd $ 的复杂度没有考虑。 第四题看到“最大值尽量小”就想到了二分,二分写得也是…
0 2023-01-19C++ STL那些事
仍在施工中 介绍C++ STL的一些函数和容器的用法。 简介 C++ Standard Template Library(标准模板库),简称 STL 成员 容器 map 有建立映射的关系。对于每一个 $key$ 有一个 $value$ 与之对应。 $$ key -> value $$ 时间复杂度 $ O(log_n) $ 使用前包含头文件 <map> #include<map> 比如我们新建了一个 map 叫 m,$key$ 是 string 类型,$key$ 是 int 类型,可以这么写: map <string, int>m; m.find(x):传入 $k…
0 2023-01-18洛谷CF1759B题解
洛谷CF1759B的一种奇妙的解法 一种奇妙的解法 题意 有一个数列是 $1 \sim n$ 的一种排列。丢掉了几个数,给出丢掉数的和留着的数,问它们是否能组成这个数列? 思路 我们都知道,求这样公差为 $1$ 的等差数列的和公式是$$\dfrac{n(n+1)}{2}$$ 而根据输入的数据我们可以把数列和求出来,$\times2$ 再平方根即可求出 $n$ ! 最后确保 $n \geq$ 留着的数中最大的数并且用 $n$ 套入上面的公式验证它等于输入的和。 代码 #include<iostream> #includ…
0 2022-11-25洛谷CF1744A题解
链接:CF1744A 解释 这道题目就是说每个测试都有一个数组和一个同样长的字符串,每次可以把数组中的一个数批量换成一个小写英文字母,问给定的组合是否合法? 思路 建一个数组$x$,相当于一个表,在 $x_i$ 上记录 $i$。表示的字母,只要以后读到 $x_i$ 上的值不等于当前的就直接 NO 。 代码 时间 15ms // LUOGU_RID: 91222907 #include<iostream> using namespace std; void s() { int n; cin >> n; int z[n]; for (int i…
1 2022-10-23CSP-J 2021 第一轮
还有一个星期就CSP-J了,加油~ 做个CSP-J 2021~ 在线 洛谷有题 选择 第5题 A选项:a入;a出;b入;b出...B选项:a入;b入;...e出,d出...C选项:a入;b入;b出;a出;c入;c出;d入;d出;e入;e出D选项:a入;b入;c入;c出;d入;d出;a不可能出来,故此项错误 第6题 二叉树没有回路 第8题 画出来就可以了,好像没有现成的公式可以套用~(滑稽) 第9题 后缀表达式的特点是运算符在运算量的后面;运算符已经体现了正确的运算顺序。中缀表…
0 2022-09-11