程序设计之路
C,C++,CCF,ACM……
静待花开s0
If you find a path with no obstacles, it probably doesn't lead anywhere.
展开
-
C/C++中输入输出格式那些事!!! cin cout scanf printf
C/C++中输入输出格式那些事!!! cin cout scanf printf进制转换那些事:https://vjudge.net/problem/HDU-2031#include<cstdio>#include<cstring>#include<string>#include<iostream>#include<...原创 2019-04-24 09:10:59 · 546 阅读 · 0 评论 -
OJ上的样例复制粘贴到cmd窗口时,制表符全部都消失了
OJ上的样例复制粘贴到cmd窗口时,制表符全部都消失了比如如下数据:复制到命令窗口后变成了酱紫:怎么解决呢?右键,属性,编辑选项一栏中,粘贴时筛选剪切板内容 这勾取消掉然后就好了...原创 2019-04-18 17:42:15 · 851 阅读 · 0 评论 -
并查集基本代码实现
并查集基本代码实现#include<cstdio>#include<cstring>#include<string>#include<iostream>#include<stack>#include<algorithm>#include<map>#include<set>#incl...原创 2019-04-14 20:07:10 · 1399 阅读 · 0 评论 -
C++map容器用法
#include<cstdio>#include<map>#include<string>using namespace std;int main(){ //声明(int,const char*为值 map<int,const char*>m; //插入元素 m.insert(make_pair(1,"ONE")); m....原创 2019-04-14 19:31:18 · 680 阅读 · 0 评论 -
'>>' should be '> >' within a nested template argument list
'>>' should be '> >' within a nested template argument list在做OJ过程中,在本地跑程序没什么问题,到了平台上就报错,如上,为什么呢,原因是中间需要加一个空格!!!就是说因为>>本身是一个输入输出流的符号,编译器比较严格的话,就会报错,所以,在对模板类型声明的时候,尖括号需要中间加一个空格。...原创 2019-04-14 18:31:17 · 2474 阅读 · 0 评论 -
Dev C++添加C++11标准
Dev C++添加C++11标准首先确保Dev C++版本是最新的5.11版不用C++11标准的语法去运行大多数时候会warning,但是,有时候可能会报错,比如说,不能使用stoll函数,Lambda表达式等等可以点击菜单栏的“工具”-》“编译选项”进入如下界面,勾选“编译时加入以下指令”,填入"-std=c++11"然后就OK了...原创 2019-04-12 19:53:36 · 7402 阅读 · 0 评论 -
有关整形数和浮点型数 的讨论(int,float,double)
有关整形数和浮点型数 的讨论(int,float,double)整形数和浮点型数据在计算机中的存储方式不同,如果数据比较大时,将一个浮点型数据转换为整型数据时,可能会导致数据的不相等。比如说:如果是读入一个整形数据100000000,将它赋值到浮点型数据,无论是double还是float,都将输出为1e+008;但是,如果读入数据是100000001,那么问题来了,后面的太小的数据...原创 2019-04-12 18:15:21 · 1189 阅读 · 0 评论 -
HDU - 2024 C语言合法标识符
HDU - 2024 C语言合法标识符HDU - 2024首先,补充一下新知识,什么叫合法标识符?C语言标识符是指用来标识某个实体的一个符号,在不同的应用环境下有不同的含义,标识符由字母(A-Z,a-z)、数字(0-9)、下划线“_”组成,并且首字符不能是数字,但可以是字母或者下划线。例如,正确的标识符:abc,a1,prog_to。原题如下:输入一个字符串,判断其...原创 2019-04-04 19:38:45 · 515 阅读 · 0 评论 -
C++头文件中的bits/stdc++.h——万能头文件
看别人写代码的时候经常发现这样一个头文件#include<bits/stdc++.h>这是个什么东西呢?后来终于好奇百度了一下:原来这个是个万能的头文件,其中包含了基本上所有的平时需要用的头文件,如下:// C++ includes used for precompiling -*- C++ -*-// Copyright (C) 2003-2014 Free...原创 2019-04-03 16:50:59 · 989 阅读 · 0 评论 -
判断一个数是不是素数的几种方法,不断优化!!! 素数判定 HDU - 2012
判断一个数是不是素数的几种方法,不断优化!!!这种题目应该算是比较基础的了,但是,越是基础的东西,越是要记得清楚明白,初学C的时候,看过这种问题,后来慢慢就不在意了,再次看到这个题目,依然感触颇深。方法1:遍历小于该数的全部数据bool prime(int c){ if(c<=3) { return c>1;//1既不是素数,也不是合数 ...原创 2019-03-30 20:27:39 · 2093 阅读 · 2 评论 -
hide handkerchief HDU - 2104 三种方法 最优:GCB 最大公约数
hide handkerchiefHDU - 2104The Children’s Day has passed for some days .Has you remembered something happened at your childhood? I remembered I often played a game called hide handkerchief with...原创 2019-03-29 23:45:07 · 418 阅读 · 0 评论 -
Copying Books POJ - 1505 二分答案 详细注释
Copying BooksPOJ - 1505Before the invention of book-printing, it was very hard to make a copy of a book. All the contents had to be re-written by hand by so called scribers. The scriber had been...原创 2019-03-29 23:12:29 · 505 阅读 · 0 评论 -
任意进制转换 Specialized Four-Digit Numbers HDU - 1197
Specialized Four-Digit NumbersHDU - 1197Find and list all four-digit numbers in decimal notation that have the property that the sum of its four digits equals the sum of its digits when represe...原创 2019-03-29 23:08:56 · 399 阅读 · 0 评论 -
Text Reverse HDU - 1062 字符串处理,空格切分。
Text Reverse HDU - 1062Ignatius likes to write words in reverse way. Given a single line of text which is written by Ignatius, you should reverse all the words and then output them.InputThe ...原创 2019-03-29 23:04:42 · 511 阅读 · 0 评论 -
C++ STL之map容器用法详解 (包含pair,make_pair等等)
C++ STL之map容器用法详解map 容器是关联容器的一种。在关联容器中,对象的位置取决于和它关联的键的值。键可以是基本类型,也可以是类类型。字符串经常被用来作为键,如果想要保存姓名和地址的记录,就可以这么使用。名称通常可能是一个或多个字符串。关联容器中的对象位置的确定取决于容器中的键的类型,而且对于特定容器类型的内部组织方式,不同的STL有不同的实现。map<K,T> ...原创 2019-03-27 19:44:46 · 5384 阅读 · 0 评论 -
C++ 中的switch函数参数类型
C++ 中的switch函数参数类型switch (exp1)中, exp1 是一个整数表达式,整数表达式可以是int基本类型或Integer包装类型,由于, byte,short,char都可以隐含转换为 int ,所以,这些类型以及这些类型的包装类型也是可以的。因此传递给 switch 和 case 语句的参数应该是 int 、 short、 char 或者 byte, 注意switch...原创 2019-03-27 19:10:38 · 4010 阅读 · 0 评论 -
多项式求和 HDU - 2011
多项式求和HDU - 2011多项式的描述如下:1 - 1/2 + 1/3 - 1/4 + 1/5 - 1/6 + ...现在请你求出该多项式的前n项的和。Input输入数据由2行组成,首先是一个正整数m(m<100),表示测试实例的个数,第二行包含m个正整数,对于每一个整数(不妨设为n,n<1000),求该多项式的前n项的和。Output对于每个测试...原创 2019-03-23 20:57:43 · 330 阅读 · 0 评论 -
迷宫问题 最短路+路径输出POI 3984
迷宫问题 最短路+路径输出POI 3984原题如下:POI 3984定义一个二维数组:int maze[5][5] = { 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0,};它表示一个迷宫,其中的1表示墙壁,0表示可以走的路,只能横着走或竖着走,不能...原创 2019-03-20 21:29:54 · 494 阅读 · 0 评论 -
HihoCoder - 1268九宫问题(DFS)
九宫HihoCoder - 1268小Hi最近在教邻居家的小朋友小学奥数,而最近正好讲述到了三阶幻方这个部分,三阶幻方指的是将1~9不重复的填入一个3*3的矩阵当中,使得每一行、每一列和每一条对角线的和都是相同的。三阶幻方又被称作九宫格,在小学奥数里有一句非常有名的口诀:“二四为肩,六八为足,左三右七,戴九履一,五居其中”,通过这样的一句口诀就能够非常完美的构造出一个九宫格来。...原创 2019-03-16 15:32:44 · 477 阅读 · 0 评论 -
C++中符号优先级问题
C++中符号优先级问题*优先级一列 数字越小 优先级越大 优先级 运算符 名称或含义 使用形式 结合方向 说明 1 后置++ 后置自增运算符 变量名++ 左到...转载 2019-03-16 15:21:54 · 2200 阅读 · 0 评论 -
高精度计算(大数相加)A + B Problem II HDU 1002(C++ and Java)
A + B Problem IIHDU - 1002I have a very simple problem for you. Given two integers A and B, your job is to calculate the Sum of A + B.InputThe first line of the input contains an integer...原创 2019-03-11 18:06:28 · 403 阅读 · 0 评论 -
vjudge——HDU刷题顺序
转载自博主:671coder第一阶段:开始入门吧!(15天,53题)一.输入输出练习(2天,10题)1000、1089—1096、1001二.简单操作:(2—4天,12题)2000—2011、2039三.英文题试水(3—4天,8题)1720、1062、2104、1064、2734、1170、1197、2629四...转载 2019-03-10 15:48:12 · 2043 阅读 · 0 评论 -
HDU 1096 A+B for Input-Output Practice (VIII)
HDU 1096 A+B for Input-Output Practice (VIII)神奇的A+B问题,为了熟悉平台以及各种输出格式要求,刷一下A+B问题!Your task is to calculate the sum of some integers.InputInput contains an integer N in the first line, an...原创 2019-03-10 15:28:00 · 443 阅读 · 0 评论 -
多重部分和问题
多重部分和问题#include <iostream>#include<algorithm>using namespace std;const int MAX_N=100;int a[MAX_N],m[MAX_N];//值和个数const int MAX_K=100000;int n,K;//数列的长度,目标的和数bool dp[MAX_N+1][M...原创 2019-03-16 15:35:08 · 374 阅读 · 0 评论 -
C++中的左值和右值
C++中的左值和右值学C++时间也不短了,突然发现,还不知道左值和右值是什么,毕竟学C++不够系统,详细。下面是在许多博主中的博文中看到的一些相关解释:摘自《C++ Primer》第五版C语言中,左值可以位于赋值语句的右侧,右值则不能。C++中,一个对象被用作右值时,用的是对象的值(内容);当对象被当做左值的时候,用的是对象的身份(在内存中的位置)。 一个左值表达式的求...转载 2019-03-04 16:00:48 · 597 阅读 · 0 评论 -
利用栈实现一个简易的计算器(数据结构之栈)
利用栈实现一个简易的计算器实现了加减乘除运算(没有使用STL)基本思想:1.一个数据栈,一个符号栈2.优先级判断3.负号和减号的判别与处理4.括号匹配代码如下:#include<iostream>#include<string>#include<cstdlib>/*1、创建栈类,采用数组描述;2、计算数学表达式的值。输...原创 2019-03-02 20:53:02 · 3060 阅读 · 8 评论 -
C++(STL3)容器适配器(1) stack<T>,queue<T> and priority_queue<T>
C++(STL3)容器适配器容器适配器是一个封装了序列容器的类模板,它在一般序列容器的基础上提供了一些不同的功能。之所以称作适配器类,是因为它可以通过适配容器现有的接口来提供不同的功能。这里有 3 种容器适配器:stack<T>:是一个封装了 deque<T> 容器的适配器类模板,默认实现的是一个后入先出(Last-In-First-Out,LIFO)的压入栈。s...原创 2019-03-02 20:42:30 · 583 阅读 · 0 评论 -
C++STL 2——序列容器 array、vector 、deque、 list 和 forward_list
C++STL 2——序列容器一、概述序列容器以线性序列的方式存储元素。它没有对元素进行排序,元素的顺序和存储它们的顺序相同。array<T,N> (数组容器) :是一个长度固定的序列,有 N 个 T 类型的对象,不能增加或删除元素。 vector<T> (向量容器) :是一个长度可变的序列,用来存放T类型的对象。必要时,可以自动增加容量,但只能在序列的末尾高效...原创 2019-03-02 19:13:01 · 591 阅读 · 0 评论 -
STL1——string 类的所有成员函数
string 类的所有成员函数写代码时经常会遇到对字符串的处理,如下是string类的成员函数函数名称 功能 构造函数 产生或复制字符串 析构函数 ~string() 销毁字符串 =,assign 赋以新值 Swap 交换两个字符串的内容 + =,append( ),push_back() 添加字符 insert () 插...原创 2019-03-02 18:23:34 · 522 阅读 · 0 评论 -
C++STL入门汇总(OJ必备)
C++STL入门汇总(OJ必备)做了没多少OJ题目,就发现了自己在STL使用的不足,明明可以更简单的完成一些工作,却总是因为不懂STL完全自己设计,导致对于一些简单问题仍然花费很多时间。因此,学习STL迫在眉睫!!!以下转载自http://www.cnblogs.com/shiyangxt/archive/2008/09/11/1289493.html第一部分:(参考百度百科)一...转载 2019-03-02 09:56:38 · 1298 阅读 · 0 评论 -
C++ 中的时间测试与空间申请
C++ 中的时间测试在各种 oj 平台做题的时候,经常会出现时间要求,即你的算法复杂度一般不能太高,否则会超时。同时,在CCF考试中,练超时都不会告诉你,考试的时候不会出程序结果,因此,可以自己测一下运行时间,可以使用以下代码来完成。#include<iostream>#include<ctime>using namespace std;int m...原创 2019-03-02 09:05:56 · 1805 阅读 · 0 评论 -
论那些在vjduge等oj平台踩过的坑
论那些在vjduge等oj平台踩过的坑1.常见问题(1)题目对时间和空间的要求:开数组时要考虑内存,同时兼顾时间复杂度,对于要求相对较低的题目,可以直接暴力解决。(2)出现Presentation Error,输出格式不正确。例如:如下的空行问题(3)注意要输入多少次数据!!!谨记,第二次踩坑了,下不为例!!!自己出数据测试一点没错,找半天bug 找不到。例如一定要仔细...原创 2019-03-03 15:42:38 · 1416 阅读 · 0 评论 -
完全背包问题
完全背包问题相比于0-1背包问题,完全背包问题的不同在于每种物品可以挑选任意多件。以下提供了两个函数,均可以实现计算。#include <iostream>#include<algorithm>#include<cstring>using namespace std;const int MAX_N=100;//输入int n,W;i...原创 2019-02-26 21:55:54 · 333 阅读 · 0 评论 -
LCS(最长公共子序列问题)
LCS(最长公共子序列问题)首先,我们先声明一下子序列的概念: 取出序列中某些特定的项并保持它们在原来序列中的顺序,所得到的新序列成为原序列的子序列。(所以说,子序列未必是连续的,连续的就叫子集了)#include <iostream>#include<cstring>#include<algorithm>using nam...原创 2019-02-25 16:21:58 · 379 阅读 · 0 评论 -
0-1背包问题(记忆化搜索与动态规划)(多种方法)
0-1背包问题(记忆化搜索与动态规划)方法一:最朴素的方法针对每个物品是否放入背包进行测试,找出价值最大的一个#include <iostream>using namespace std;const int MAX_N=100;//输入int n,W;int w[MAX_N],v[MAX_N];//从第i个物品开始挑选重量小于j的部分int r...原创 2019-02-24 23:18:04 · 1604 阅读 · 0 评论 -
Saruman's Army(POJ 3069)
POJ 3069(Saruman's Army)(贪心算法)原题链接:http://poj.org/problem?id=3069该题目思路相对简单,即从最左边向右以此判断即可#include <iostream>#include<algorithm>using namespace std;const int MAX_N=1000;int n,R...原创 2019-02-24 19:14:42 · 438 阅读 · 0 评论 -
Best Cow Line(POJ 3617)
原题链接:http://poj.org/problem?id=3617字典序最小问题(贪心算法)基本思想:不断取S的开头和末尾中较小的一个字符放到T的末尾难点:开头和末尾的字符相同的情形如何解决修正算法:按照字典序比较S和S反转后的字符串S’#include <iostream>#include<cstdio>using namespace std...原创 2019-02-24 19:08:30 · 402 阅读 · 0 评论 -
利用宽度优先搜索解决迷宫最短路径问题
利用宽度优先搜索解决迷宫最短路径问题题目:给定一个大小为N*M的迷宫,迷宫由通道和墙壁组成,每一步可以向邻接的上下左右四格的通道移动。求从起点到终点所需最小步数。注意:本题假定从起点一定可以移动到终点。限制条件N,M<=100(# . S G 分别表示墙壁,通道,起点和终点)#include<iostream>#include<qu...原创 2019-02-24 16:04:04 · 1889 阅读 · 0 评论 -
Lake Counting(POJ No.2386)
Lake Counting(POJ No.2386)原题链接:http://poj.org/problem?id=2386POJ已通过思路为采用深度优先搜索,循环遍历判断各个方位有没有水。#include<iostream>using namespace std;const int MAX_M=100,MAX_N=100 ;int N,M;//char f...原创 2019-02-24 15:55:55 · 480 阅读 · 0 评论 -
Ants(POJ No.1852)
Ants(POJ No.1852)原题链接:http://poj.org/problem?id=1852poj已通过。#include <iostream>#include<algorithm>using namespace std;int L,n;int x[1000000];void solve(){ int minT=0; int max...原创 2019-02-24 15:47:01 · 490 阅读 · 0 评论