数据结构
枫jg
这个作者很懒,什么都没留下…
展开
-
PAT B1040
字符串 APPAPT 中包含了两个单词 PAT,其中第一个 PAT 是第 2 位§,第 4 位(A),第 6 位(T);第二个 PAT 是第 3 位§,第 4 位(A),第 6 位(T)。 现给定字符串,问一共可以形成多少个 PAT? 输入格式: 输入只有一行,包含一个字符串,长度不超过10510^5105 ,只包含 P、A、T 三种字母。 输出格式: 在一行中输出给定字符串中包含多少个 PAT。由于结果可能比较大,只输出对 1000000007 取余数的结果。 输入样例: APPAPT 输出样例: 2原创 2020-08-08 14:42:08 · 98 阅读 · 0 评论 -
PAT B1025 反转链表
给定一个常数 K 以及一个单链表 L,请编写程序将 L 中每 K 个结点反转。例如:给定 L 为 1→2→3→4→5→6,K 为 3,则输出应该为 3→2→1→6→5→4;如果 K 为 4,则输出应该为 4→3→2→1→5→6,即最后不到 K 个元素不反转。 输入格式: 每个输入包含 1 个测试用例。每个测试用例第 1 行给出第 1 个结点的地址、结点总个数正整数 N (≤10510^5105)、以及正整数 K (≤N),即要求反转的子链结点的个数。结点的地址是 5 位非负整数,NULL 地址用 −1 表示原创 2020-08-07 11:45:20 · 183 阅读 · 0 评论 -
PAT B1015 德才论
宋代史学家司马光在《资治通鉴》中有一段著名的“德才论”:“是故才德全尽谓之圣人,才德兼亡谓之愚人,德胜才谓之君子,才胜德谓之小人。凡取人之术,苟不得圣人,君子而与之,与其得小人,不若得愚人。” 现给出一批考生的德才分数,请根据司马光的理论给出录取排名。 输入格式: 输入第一行给出 3 个正整数,分别为:N(≤10510^5105),即考生总数;L(≥60),为录取最低分数线,即德分和才分均不低于 L 的考生才有资格被考虑录取;H(<100),为优先录取线——德分和才分均不低于此线的被定义为“才德原创 2020-08-05 21:04:27 · 104 阅读 · 0 评论 -
PATB1027 打印沙漏
代码: #include<iostream> #include<cmath> using namespace std; int main() { int N, i,j, n; char a; cin >> N >> a; for (i = N; i > 0; i--) { if (2 * pow(i + 1, 2) - 1 <= N) { break;原创 2020-08-03 16:47:26 · 84 阅读 · 0 评论 -
PAT B1036 跟奥巴马一起编程
美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写计算机代码的总统。2014 年底,为庆祝“计算机科学教育周”正式启动,奥巴马编写了很简单的计算机代码:在屏幕上画一个正方形。现在你也跟他一起画吧! 输入格式: 输入在一行中给出正方形边长 N(3≤N≤20)和组成正方形边的某种字符 C,间隔一个空格。 输出格式: 输出由给定字符 C 画出的正方形。但是注意到行间距比列间距大,所以为了让结果看上去更像正方形,我们输出的行数实际上是列数的 50%(四舍五入取整)。 输入样例: 1原创 2020-08-03 15:36:48 · 84 阅读 · 0 评论 -
PAT甲级 1018 Public Bike Management
读题: 杭州有共享单车服务点。一个人可以在任意站点借一辆单车,在该城市的任意其他站点归还单车, PBMC持续管理所有站点的实时容量。如果一个站点是半饱和的,那么它是最佳的。如果它饱和或者空,PBMC会调整单车去满足最佳状态。并且所有路上的站点也要尽量达到最佳状态。当一个问题站点报告,PBMC总是选择最短路到达站点,如果多余一条最短路,选择从PBMC携带尽可能少的单车的路径。每个站点的最大容量为10...原创 2020-08-02 21:20:59 · 332 阅读 · 0 评论 -
PAT B1007
让我们定义dn=pn+1−pnd_n=p_{n+1}-p_ndn=pn+1−pn,其中pip_ipi是第i个素数。显然有d1d_1d1=1,且对于n>1有dnd_ndn是偶数。“素数对猜想”认为“存在无穷多对相邻且差为2的素数”。 现给定任意正整数N(<100000),请计算不超过N的满足猜想的素数对的个数。 输入格式:输入在一行给出正整数N。 输出格式:在一行中输出不超过N的满足猜想的素数对的个数。 输入样例: 20 输出样例: 4 // ConsoleApplicationB原创 2020-08-02 15:57:04 · 90 阅读 · 0 评论 -
PAT B1010 一元多项式求导
PAT B1010 一元多项式求导 (25分) 设计函数求一元多项式的导数。注:xnx^nxn(n为整数)的导数为nxn−1nx^{n-1}nxn−1。 输入格式: 以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过 1000 的整数)。数字间以空格分隔。 输出格式: 以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。注意“零多项式”的指数和系数都是 0,但是表示为 0 0。 输入样例: 3 4 -5 2 6 1 -2 0 输出样例: 12 3 -10 1原创 2020-08-02 10:46:22 · 134 阅读 · 0 评论 -
PAT 甲级1010
C++中 min_element和 max_element 函数的用法 https://blog.csdn.net/liuchuo/article/details/79580773 主要采用二分法、进制转换。注意36进制的转换方法:将任意进制转换为十进制,比较十进制数是否相等。对于工作量较大的遍历,可以采用二分法,时间复杂度为Nlog(N) isdigit函数的用法 如果isdigit函数包含在c...原创 2019-10-21 20:51:33 · 176 阅读 · 0 评论 -
floyed算法中的dp思想
floyed算法:dp思想。 动态规划算法的基本步骤: 划分阶段:按照问题的时间或空间特征,把问题划分为若干个阶段。这若干个阶段要具备无后向性,即当前状态蕴含了此阶段前的所有历史信息,下一阶段的状态只与当前状态有关。 选择状态:将问题发展到各个阶段时所处的各种客观情况用不同的状态表示出来。 确定决策并写出状态转移方程:决策即当前阶段到下一个阶段执行的操作,我们通常根据相邻两段的各状态之间的关系来...原创 2019-10-11 16:14:50 · 300 阅读 · 0 评论 -
Dijkstra算法原理
dijkstra简介:荷兰计算机科学家,1972年获图灵奖。 主要贡献: dijkstra最短路算法(贪心思想) 信号量机制,PV元语 银行家算法(死锁) 提出“goto有害论” 第一个Algol 60编译器的设计者和实现者 THE操作系统的设计者和开发者 OK! 进入正题!!!!!!! Dijjkstra算法是单源最短路算法,即某个点到其他所有点的最短路。主要是运用贪心的思想,算法步骤如下:...原创 2019-10-09 15:42:16 · 555 阅读 · 0 评论