- 博客(28)
- 收藏
- 关注
原创 CF1005A Tanya and Stairways
题目描述Little girl Tanya climbs the stairs inside a multi-storey building. Every time Tanya climbs a stairway, she starts counting steps from 1 1 1 to the number of steps in this stairway. She speak...
2018-07-31 21:28:17 212
原创 CF1003C Intense Heat递推
题目描述The heat during the last few days has been really intense. Scientists from all over the Berland study how the temperatures and weather change, and they claim that this summer is abnormally h...
2018-07-31 18:55:10 210
原创 落谷CF1003A Polycarp's Pockets
题目描述Polycarp has n n n coins, the value of the i i i -th coin is ai a_i ai . Polycarp wants to distribute all the coins between his pockets, but he cannot put two coins with the same value into the...
2018-07-31 16:35:23 270
原创 位运算简介及实用技巧(一):基础篇
出处:http://www.matrix67.com/blog/archives/263 去年年底写的关于位运算的日志是这个Blog里少数大受欢迎的文章之一,很多人都希望我能不断完善那篇文章。后来我看到了不少其它的资料,学习到了更多关于位运算的知识,有了重新整理位运算技巧的想法。从今天起我就开始写这一系列位运算讲解文章,与其说是原来那篇文章的follow-up,不如说是一个remake...
2018-07-31 10:43:30 178
原创 数论-扩展欧几里得 P1516 青蛙的约会
题目描述两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面。它们很高兴地发现它们住在同一条纬度线上,于是它们约定各自朝西跳,直到碰面为止。可是它们出发之前忘记了一件很重要的事情,既没有问清楚对方的特征,也没有约定见面的具体位置。不过青蛙们都是很乐观的,它们觉得只要一直朝着某个方向跳下去,总能碰到对方的。但是除非这两只青蛙在同一时间跳到同一点上,不然是永远都不可能碰面的。为了帮助...
2018-07-31 10:13:14 314
原创 数论——扩展欧几里得算法(exgcd)
求不定方程 a∗x+b∗y=1 的一组解的方法由 a∗x1+b∗y1=gcd(a,b)=gcd(b,amod b)=b∗x2+[a−⌊a/b⌋∗b]∗y2=a∗y2+b∗(x2−y2∗⌊a/b⌋)=>x1=y2=>y1=x2−y2∗(a / b) 用途:1)求解不定方程;2)求解模线性方程(线性同余方程);3)求解模的逆元;1)求解不...
2018-07-30 17:41:49 300
转载 lower_bound函数的使用
来自:http://blog.csdn.net/niushuai666/article/details/6734403函数lower_bound()在first和last中的前闭后开区间进行二分查找,返回大于或等于val的第一个元素位置。如果所有元素都小于val,则返回last的位置举例如下:一个数组number序列为:4,10,11,30,69,70,96,100.设要插入数字3,9...
2018-07-30 16:18:51 591
原创 0004:数字统计
查看 提交 统计 提问总时间限制:1000ms内存限制:10000kB描述给出一个整数n(1<=n<=20000000),要求输出从1到n间所有数字中“1”的出现次数.例如:数字11,1到11间数字“1”的出现次数为4。(1,10,11,11出现4次,因为11有两个1,所以出现4次)输入一个整数n,(1<=n<=20000000)...
2018-07-30 00:32:49 981
原创 回溯法 落谷 P1219 八皇后
题目描述检查一个如下的6 x 6的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行、每列有且只有一个,每条对角线(包括两条主对角线的所有平行线)上至多有一个棋子。上面的布局可以用序列2 4 6 1 3 5来描述,第i个数字表示在第i行的相应位置有一个棋子,如下:行号 1 2 3 4 5 6列号 2 4 6 1 3 5这只是跳棋放置的一个解。请编一个程序找出所有跳棋放置的解。并把...
2018-07-29 22:05:24 235
原创 落谷 P1031 均分纸牌 贪心水题
题目描述有 NNN 堆纸牌,编号分别为 1,2,…,N1,2,…,N1,2,…,N 。每堆上有若干张,但纸牌总数必为 NNN 的倍数。可以在任一堆上取若干张纸牌,然后移动。移牌规则为:在编号为 111 堆上取的纸牌,只能移到编号为 222 的堆上;在编号为 NNN 的堆上取的纸牌,只能移到编号为 N−1N-1N−1 的堆上;其他堆上取的纸牌,可以移到相邻左边或右边的堆上。现在要求找出一...
2018-07-29 18:06:10 240
原创 P1803 凌乱的yyy / 线段覆盖 pair或者结构体排序+贪心
题目背景快noip了,yyy很紧张!题目描述现在各大oj上有n个比赛,每个比赛的开始、结束的时间点是知道的。yyy认为,参加越多的比赛,noip就能考的越好(假的)所以,他想知道他最多能参加几个比赛。由于yyy是蒟蒻,如果要参加一个比赛必须善始善终,而且不能同时参加2个及以上的比赛。输入输出格式输入格式: 第一行是一个整数n ,接下来n行每行是2个正...
2018-07-29 17:26:26 416
原创 简单贪心 P1094 纪念品分组
题目描述元旦快到了,校学生会让乐乐负责新年晚会的纪念品发放工作。为使得参加晚会的同学所获得 的纪念品价值相对均衡,他要把购来的纪念品根据价格进行分组,但每组最多只能包括两件纪念品, 并且每组纪念品的价格之和不能超过一个给定的整数。为了保证在尽量短的时间内发完所有纪念品,乐乐希望分组的数目最少。你的任务是写一个程序,找出所有分组方案中分组数最少的一种,输出最少的分组数目。输入输出格式...
2018-07-29 16:25:09 212
原创 P1208 [USACO1.3]混合牛奶 Mixing Milk 落谷 简单贪心+排序
题目描述由于乳制品产业利润很低,所以降低原材料(牛奶)价格就变得十分重要。帮助Marry乳业找到最优的牛奶采购方案。Marry乳业从一些奶农手中采购牛奶,并且每一位奶农为乳制品加工企业提供的价格是不同的。此外,就像每头奶牛每天只能挤出固定数量的奶,每位奶农每天能提供的牛奶数量是一定的。每天Marry乳业可以从奶农手中采购到小于或者等于奶农最大产量的整数数量的牛奶。给出Marry乳业每天...
2018-07-29 10:20:40 265
原创 pair的动态数组排序
1.pair在头文件utility中,可以有pair定义动态数组进行排序,pair中内置了<的默认排序方式,即对first进行默认的升序排序,也可以通过sort函数自定义排序方式 pair的vector类型bool strict_weak_ordering(const std::pair<int,std::string>a,const std::pair<int...
2018-07-29 09:35:10 1949
原创 落谷P1223 排队接水 pai动态数组+排序
题目描述有n个人在一个水龙头前排队接水,假如每个人接水的时间为Ti,请编程找出这n个人排队的一种顺序,使得n个人的平均等待时间最小。输入输出格式输入格式: 输入文件共两行,第一行为n;第二行分别表示第1个人到第n个人每人的接水时间T1,T2,…,Tn,每个数据之间有1个空格。 输出格式: 输出文件有两行,第一行为一种排队顺序,即1到n的一种排列;第二行为这...
2018-07-29 09:22:24 300
原创 蓝桥杯 打水问题 贪心
算法提高 打水问题时间限制:1.0s 内存限制:512.0MB提交此题问题描述 N个人要打水,有M个水龙头,第i个人打水所需时间为Ti,请安排一个合理的方案使得所有人的等待时间之和尽量小。输入格式 第一行两个正整数N M 接下来一行N个正整数Ti。 N,M<=1000,Ti<=1000输出格式 最小的等待时间之和。(不需要输出具体的安排方案)样例输入7...
2018-07-29 00:48:47 398
原创 落谷P1181 数列分段Section I简单贪心
题目描述对于给定的一个长度为 NNN 的正整数数列 AiA_iAi ,现要将其分成连续的若干段,并且每段和不超过 MMM (可以等于 MMM ),问最少能将其分成多少段使得满足要求。输入输出格式输入格式: 第1行包含两个正整数 N,MN,MN,M ,表示了数列 AiA_iAi 的长度与每段和的最大值,第 222 行包含 NNN 个空格隔开的非负整数 AiA_iAi ...
2018-07-28 22:06:54 326
原创 NOIP提高组2004 合并果子
题目描述在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。多多决定把所有的果子合成一堆。每一次合并,多多可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。可以看出,所有的果子经过 n−1n-1n−1 次合并之后, 就只剩下一堆了。多多在合并果子时总共消耗的体力等于每次合并所耗体力之和。因为还要花大力气把这些果子搬回家,所以多多在合并果子时要...
2018-07-28 21:22:13 522
转载 stringstream的用法
转载http://blog.163.com/chen_dawn/blog/static/11250632010111215937586/stringstream的用法使用stringstream对象简化类型转换C++标准库中的<sstream>提供了比ANSI C的<stdio.h>更高级的一些功能,即单纯性、类型安全和可扩展性。在本文中,我将展示怎样使用这些库...
2018-07-28 09:20:24 188
转载 getline()详解
本文转自:http://blog.sina.com.cn/s/blog_60263c1c0101ck25.html学习C++的同学可能都会遇到一个getline()函数,譬如在C++premer中,标准string类型第二小节就是“用getline读取整行文本”。书上给的程序如下:int main(){ string line: while(getline(cin...
2018-07-28 09:02:17 248
原创 C++ pair的用法
来源:https://blog.csdn.net/u014082714/article/details/442776871 pair的应用pair是将2个数据组合成一个数据,当需要这样的需求时就可以使用pair,如stl中的map就是将key和value放在一起来保存。另一个应用是,当一个函数需要返回2个数据的时候,可以选择pair。 pair的实现是一个结构体,主要的两个成员变量是fi...
2018-07-27 16:08:01 288
原创 Backward Digit Sums POJ3187 -
Backward Digit SumsTime Limit : 2000/1000ms (Java/Other) Memory Limit : 131072/65536K (Java/Other)Total Submission(s) : 8 Accepted Submission(s) : 6Problem DescriptionFJ and his cows en...
2018-07-27 11:54:38 175
原创 POJ3186:Treats for the Cows(区间DP) - CSDN博客
Treats for the CowsTime Limit : 2000/1000ms (Java/Other) Memory Limit : 131072/65536K (Java/Other)Total Submission(s) : 5 Accepted Submission(s) : 4Problem DescriptionFJ has purchased N...
2018-07-27 10:42:36 253
原创 POJ 3253 Fence Repair(贪心,优先队列) - CSDN博客
Fence RepairTime Limit : 4000/2000ms (Java/Other) Memory Limit : 131072/65536K (Java/Other)Total Submission(s) : 75 Accepted Submission(s) : 15Problem DescriptionFarmer John wants to r...
2018-07-27 10:21:20 185
原创 poj—1256全排列变形
AnagramTime Limit: 1000MS Memory Limit: 10000K Total Submissions: 22004 Accepted: 8718 DescriptionYou are to write a program that has to generate all possible words from a give...
2018-07-27 10:05:18 243
原创 STL-全排列next_permutation和 pre_permutation的用法
百度百科中的解释如下:next_permutation函数将按字母表顺序生成给定序列的下一个较大的排列,直到整个序列为降序为止。prev_permutation函数与之相反,是生成给定序列的上一个较小的排列。二者原理相同,仅遍例顺序相反百度文库:这是一个求一个排序的下一个排列的函数,可以遍历全排列,要包含头文件<algorithm>下面是以前的笔记 与之...
2018-07-27 09:10:53 1048
原创 java简易通讯录系统
此通讯录较为简单,允许对联系人的ID,手机号,QQ号,性别,地址进行删除,添加,修改操作,体现的要求有I/o,异常处理,由于能力不足未体现出泛型,后期会做相应的改动。源代码: package SunPeishuai;import java.io.BufferedReader;import java.io.IOException;import jav...
2018-07-26 15:49:47 13195 5
转载 有些运行符不能重载为友元函数,它们是:=,(),[]和->。
转载 2018年7月3日 原因:有人说是因为C++规定赋值运算符“=”只能重载为类的非静态成员函数,而不可以重载为类的友元函数。不能重载为类的静态成员应该比较容易理解,因为静态成员函数是属于整个类的,不是属于某个对象的,它只能去操作类静态数据成员。而赋值运算符“=”是基于对象操作的。当把赋值运算符重载为类的友员函数,在程序中执行类对象的赋值语句时,程序就会出现两种矛盾的选择。(1)因为它认为类中并...
2018-07-03 09:21:01 1636
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人