- 博客(52)
- 收藏
- 关注
原创 c++中的链表
Lists将元素按顺序储存在链表中. 与 向量(vectors)相比, 它允许快速的插入和删除,但是随机访问却比较慢.assign() 给list赋值 back() 返回最后一个元素 begin() 返回指向第一个元素的迭代器 clear() 删除所有元素 empty() 如果list是空的则返回true end() 返回末尾的迭代器 erase() 删除一个元素 front(...
2019-01-11 16:35:05 442
原创 个人总结
通过这段时间的编程,像字符串以及排序这类问题可以很好的j解决,但这要问题还是在于逻辑性不强,具体体现在if else上,以及对于较复杂问题的逻辑不清晰上。希望可以得到改进...
2018-07-11 10:39:23 236
原创 完美数列
原题链接:https://www.patest.cn/contests/pat-b-practise/1030给定一个正整数数列,和正整数p,设这个数列中的最大值是M,最小值是m,如果M <= m * p,则称这个数列是完美数列。现在给定参数p和一些正整数,请你从中选择尽可能多的数构成一个完美数列。输入格式:输入第一行给出两个正整数N和p,其中N(<= 105)是输入的正整数的个数,p...
2018-02-09 17:10:25 500
原创 月饼
原题链接:https://www.patest.cn/contests/pat-b-practise/1020月饼是中国人在中秋佳节时吃的一种传统食品,不同地区有许多不同风味的月饼。现给定所有种类月饼的库存量、总售价、以及市场的最大需求量,请你计算可以获得的最大收益是多少。注意:销售时允许取出一部分库存。样例给出的情形是这样的:假如我们有3种月饼,其库存量分别为18、15、10
2018-02-05 15:07:53 242
原创 换个格式输出整数
原题链接:https://www.patest.cn/contests/pat-b-practise/1006让我们用字母B来表示“百”、字母S表示“十”,用“12...n”来表示个位数字n(输入格式:每个测试输入包含1个测试用例,给出正整数n(输出格式:每个测试用例的输出占一行,用规定的格式输出n。我的代码:#include using namespace
2018-02-03 10:23:10 247
原创 福尔摩斯的约会
原题链接:https://www.patest.cn/contests/pat-b-practise/1014大侦探福尔摩斯接到一张奇怪的字条:“我们约会吧! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm”。大侦探很快就明白了,字条上奇怪的乱码实际上就是约会的时间“星期四 14:04”,因为前面两字符串中第1对相同的大写英文
2018-02-03 10:21:24 258
原创 数素数
原题链接:https://www.patest.cn/contests/pat-b-practise/1013令Pi表示第i个素数。现任给两个正整数M 4,请输出PM到PN的所有素数。输入格式:输入在一行中给出M和N,其间以空格分隔。输出格式:输出从PM到PN的所有素数,每10个数字占1行,其间以空格分隔,但行末不得有多余空格。输入样例:5 27
2018-02-02 17:36:11 261
原创 判断素数
原题链接:https://www.patest.cn/contests/gplt/L1-028本题的目标很简单,就是判断一个给定的正整数是否素数。输入格式:输入在第一行给出一个正整数N(31的需要判断的正整数。输出格式:对每个需要判断的正整数,如果它是素数,则在一行中输出“Yes”,否则输出“No”。输入样例:211111输出样例:
2018-02-02 17:33:12 1135
原创 古风排版
原题链接:https://www.patest.cn/contests/gplt/L1-039中国的古人写文字,是从右向左竖向排版的。本题就请你编写程序,把一段文字按古风排版。输入格式:输入在第一行给出一个正整数N(输出格式:按古风格式排版给定的字符串,每列N个字符(除了最后一列可能不足N个)我的解题思路:将字符串存入一个二位字符数组中,用dat
2018-02-01 18:22:16 444
原创 求整数段和
原题链接:https://www.patest.cn/contests/gplt/L1-008给定两个整数A和B,输出从A到B的所有整数以及这些数的和。输入格式:输入在一行中给出2个整数A和B,其中-100输出格式:首先顺序输出从A到B的所有整数,每5个数字占一行,每个数字占5个字符宽度,向右对齐。最后在一行中输出全部数字的和。我的解题思路:刚开
2018-02-01 18:00:40 827
原创 D进制的A+B
原题链接: https://www.patest.cn/contests/pat-b-practise/1022原题描述: 输入两个非负10进制整数A和B(30-1),输出A+B的D (1 输入格式:输入在一行中依次给出3个整数A、B和D。输出格式:输出A+B的D进制数。输入样例:123 456 8
2017-12-02 16:27:54 626
原创 工作分配问题
问题描述:设有n件工作分配给n个人。为第i个人分配工作j所需的费用为c[i][j] 。试设计一个算法,计算最佳工作分配方案,为每一个人都分配1 件不同的工作,并使总费用达到最小。算法思路:对于工作分配问题,可以采用排列树的递归算法进行求解。要将n个工作分配给n个人,并要求费用最小,就需要依次计算出不同分配情况下的费用,到达叶节点之后再进行比较,即在遍历排列树的过程中是没有限界函数和约束
2017-11-30 17:43:01 2620
原创 关于c++中字符串的系统函数
1、比较两个字符数组是否相同 strcmp(a,b) 如果相同的话,返回的是0,如果不相同,返回的是1 对于字符串,可以直接使用“==”来进行判断2、将字符串转换成字符数组的函数 c_str() 需要注意的是字符数组一定要定义成const char * #include using namespace std;int main(){
2017-11-26 16:52:21 327
原创 c++ 中关于字符串的函数
1、比较两个字符数组是否相同 strcmp(a,b) 如果相同的话,返回的是0,如果不相同,返回的是1 对于字符串,可以直接使用“==”来进行判断
2017-11-25 17:13:35 613
原创 STL应用-——懒省事的小明
原题链接: http://newoj.acmclub.cn/problems/1685题目描述: 小明很想吃果子,正好果园果子熟了。在果园里,小明已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。小明决定把所有的果子合成一堆。 因为小明比较懒,为了省力气,小明开始想点子了: 每一次合并,小明可以把两堆果子合并到一起,消耗的体力等于两堆果
2017-11-25 15:43:09 409
原创 c++关于优先队列的使用
关于优先队列的使用: 每次从队列中取出的是具有最高优先权的元素priority_queueque;//采用默认优先级构造队列 默认从高到低排序 采用头文件“functional”内定义优先级priority_queue,greater >que;从低到高排序注意“>>”会被认为错误, 这是右移运算符,所以这里用空格号隔开采用结构体自定义优先级p
2017-11-25 15:17:39 269
原创 关于c++中vector的使用
vector 相当于一个数组,但它的长度不是固定的,可以无限度的在后面加元素还有一个优势是,对于整型数组,如果用sizeof函数取得函数长度的话,给的一定是数组所能存储的最大位数,而不是实际存储数据的长度而如果使用vector定义数组的话,有专门的函数可以返回数组的起始位置和结束位置迭代器的定义: vector ::iterator 变量名关于vector的函数:
2017-11-25 11:28:07 314
原创 ACM STL应用-——小安的字典set
原题链接: http://newoj.acmclub.cn/problems/1690题目描述:小安很喜欢英语,她渴望有一本自己独特的字典,但写一本字典并不容易,所以她想出了一个办法:从她最喜欢的一本书中挑出所有不同的单词,按照字典序排列一下就完成了字典的雏形啦。可是,这是一个很大的工程量,为了不让妹子失望,你打算写个程序来完成她的
2017-11-19 19:55:30 429
原创 在编程过程中遇到的各种小问题
对于EOF的用法: EOF是用来判断是否输入结束的,它不能用于字符串的输入 比如 scanf("%s",&s1) != EOF getline(cin,s1) != EOF 都会提示错误 而对于scanf("%d",&n) !=EOF (a=getchar()) != EOF 就不会提示错误
2017-11-19 17:25:37 1149
原创 关于c++中set集合的使用
set的特点是: 会对集合中的元素根据键值自动排序,而且不允许集合中有重复元素set中的函数: 声明: set 名称 例如: sets1; begin()返回指向第一个元素的迭代器 end()返回指向最后一个元素的迭代器 关于迭代器: 声明:set::iterator 名称
2017-11-19 16:51:02 6687
原创 ACM 字符串综合一
原题链接: http://newoj.acmclub.cn/problems/1784题目描述: 将一句话中的单词次序倒置,每两个单词之间由一个空格隔开,但是不改变单词中字母的顺序,输出改变后的句子。输入: 多组输入输出。每一行需要改变的话。(句中只包含大小写英文字母及空格)输出: 与输入相对应输出改变后的句子样例输入
2017-11-19 15:47:37 695
原创 ACM 秘闻搜索
原题链接: http://newoj.acmclub.cn/problems/1659题目描述:福尔摩斯从X星收到一份资料,全部是小写字母组成。他的助手提供了另一份资料:许多长度为8的密码列表。福尔摩斯发现,这些密码是被打乱后隐藏在先前那份资料中的。
2017-11-19 12:00:48 426
原创 字符串排序
题目链接:http://newoj.acmclub.cn/problems/1101题目解析:关键不在于怎么将字符串转换成10进制数,需要注意的是:A的ASCII码值虽然是最小的,但是在该题目中A所表示的数值要比其他字母大。 跟数值的比较是相同的道理: 位数越多,数值自然越大。当位数相同时,就需要挨个进行比较,如果相等,则继续循环,否则返回。
2017-11-18 16:41:18 3386
原创 关于c++中的输入函数
1、如果是输入数据很大的情况下,建议不要用cin,因为它所占用的时间十分长 scanf是格式化输入,printf是格式化输出。 cin是输入流,cout是输出流。效率稍低,但书写简便。 2、cin.getline()可接受空格并可将空格输出,而cin函数在遇到空格,回车,tab时都结束 注意接收的是字符数组,不是c
2017-11-18 10:11:32 336
原创 PAT 1074 宇宙无敌加法器
原题链接: https://www.patest.cn/contests/pat-b-practise/1074来之不易的20分
2017-11-18 09:29:16 1729
原创 c++中堆栈STL的使用
使用堆栈的头文件:#include 函数:栈的声明:stack栈名 例如:stacks1; 入栈 :栈名.push() s1.push(); 出栈:栈名.pop() s1.pop(); 取栈顶元素: 栈名.top() int a = s1.top(); 判栈空: 栈名.empty() s1.empty(); 栈的大小的判定: 栈名.size(
2017-11-13 11:25:28 1961
原创 编写c++程序过程中出现的错误 annonymous type with no linkage used to declare variable
问题1 annonymous type with no linkage used to declare variable我的代码:struct{ string name; int K; string thing[10];}stu[maxsize];解决方案:struct student{ string name; int K; string thing[10];
2017-11-05 15:19:04 15435
原创 括号配对问题 ACM 数据结构
原问题描述: 现在,有一行括号序列,请你检查这行括号是否配对。输入: 第一行输入一个数N(0 每组输入数据都是一个字符串S(S的长度小于10000,且S不是空串),测试数据组数少 于5组。数据保证S中只含有"[", "]", "(", ")" 四种字符输出: 每组输入数据的输出占一行,如果该字符串中所含的括号是配对的,则输出
2017-10-29 15:12:18 363
原创 前缀式计算 ACM 数据结构
原题链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=128原题描述: 先说明一下什么是中缀式: 如2+(3+4)*5这种我们最常见的式子就是中缀式。 而把中缀式按运算顺序加上括号就是:(2+((3+4)*5)) 然后把运算符写到括号前面就是+(2 *( +(3 4)
2017-10-29 12:01:11 371
原创 表达式求值 ACM 数据结构
原题链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=305描述: Dr.Kong设计的机器人卡多掌握了加减法运算以后,最近又学会了一些简单的函数求值,比如,它知道函数min(20,23)的值是20 ,add(10,98) 的值是108等等。经过训练 , Dr.Kong设计的机器人卡多甚至会计算一种
2017-10-29 11:50:07 452
原创 最小值 ACM 数据结构的使用
原题链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=1073题目描述: 输入N个数,M次查询。每次查询给出一个数x。 要求:每次查询输出前x个数中第i小的数。(i为第i次查询) 你可以假设M ,Xi 输入
2017-10-29 11:42:24 269
原创 ACM 大数 大数阶乘
原题链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=28描述: 我们都知道如何计算一个数的阶乘,可是,如果这个数很大呢,我们该如何去计算它并输出它?我的问题: 代码: #include int main(){ int i,n,a[50000],k,v=0,j,m=0;
2017-10-22 19:54:59 568
原创 ACM 大数 求高精度幂
原题链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=155描述: 对数值很大、精度很高的数进行高精度计算是一类十分常见的问题。比如,对国债进行计算就是属于这类问题。 现在要你解决的问题是:对一个实数R( 0.0n),其中n 是整数并且 0 在该过程中遇到的问题: 我的思路是先不考虑
2017-10-22 19:47:34 375
原创 ACM 大数 某种序列
原题链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=114描述: 数列A满足An = An-1 + An-2 + An-3, n >= 3 编写程序,给定A0, A1和 A2,计算A99在编程过程中遇到的问题: 本以为是很简单的for循环就可以解决的问题,没有想到在加的过程中数
2017-10-22 19:30:53 273
原创 ACM 大数 A+B Problem
原题链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=513描述: acmj最近发现在使用计算器计算高精度的大数加法时很不方便,于是他想着能不能写个程序把这个问题给解决了。在编程中遇到的问题: 在输出结果的过程中一直出现错误,因为在该过程中需要去掉一些无效的0,比如小数部分最后面的
2017-10-22 19:21:12 1114
原创 ACM 大数计算 差值
原题链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=1233题目描述: 第一行输入一个整数T,表示有T组测试数据。每组测试数据的第一行输入一个整数n(0在编程过程中遇到的问题: 误解了题目的意思,以为每次输出都会是一位整数,所以运用冒泡将输入的n个整数进行排序。其实这n个整数需要的是字典排序
2017-10-22 19:12:35 239
原创 ACM 大数运算 A/B Problem
原题链接: http://acm.nyist.net/JudgeOnline/problem.php?pid=1233题目描述:
2017-10-22 19:02:56 384
原创 java 链表实现增删改查功能
我的代码:package y;import java.lang.Math;import java.util.*;public class ypj_LNode1 { public static void main(String[] args) { // TODO Auto-generated method stub ypj_LNode1 L=new y
2016-11-18 12:01:55 688
原创 java 顺序表实现增删改查,合并,排序功能
我的代码:package ypj;import java.util.*;import java.lang.Math;public class yupeijie_Seq { /** * @param args */ public int []data; public int yupeijie_length; final int
2016-11-18 11:59:54 3602
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人