自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 资源 (2)
  • 收藏
  • 关注

原创 uva 437 The Tower of Babylon

题意:用砖块建塔,直线向上叠,地下砖块要长宽都比上面砖块大,严格递减dp一下即可博主有两种做法结构体做法#include #include #include #include using namespace std;struct Cube{ int l,w,h; Cube(int ll = 0,int ww = 0,int hh = 0) {

2016-04-28 11:27:12 292

原创 c++如何对自定义结构体排序

struct内部排序#include#includeusing namespace std;typedef struct ValuePerWeight //定义结构体{ double vw; int i; bool operator <(const ValuePerWeight &other)const //升序排序 { return

2016-04-28 10:27:10 6739 2

原创 uva 11157 Dynamic Frog

题意:一只青蛙要从河的左岸到右岸找东西,找完东西要返回,河中间有呈直线的踮脚石,有两种石头,一种大石头,可以多次踩踏不沉,一种小石头,只能踩一次。解题思路:青蛙往返可以看作两只青蛙一起过河,求青蛙最大跨度#include #include #include //#define Tusing namespace std;struct jump{ int cnt;

2016-04-28 09:28:41 477

原创 uva 11100 The Trip, 2007

装箱子,最大数量取决于同种箱子的个数,每个箱子只能装一个箱子进去#include #include #include #include //#define Tusing namespace std;int main(){ #ifdef T freopen("in.txt","r",stdin); freopen("out.txt","w",stdout)

2016-04-27 23:08:49 256

原创 uva 10020 Minimal coverage

题意:给你N条线段(Li,Ri)映射到x轴上,然后让你用其中的几条线段(条数最少)覆盖【0,M】方法:利用贪心思想。对线段按照长度进行排序,在这里可以在输入的时候,对线段进行选择,如果RiM这直接删除。然后每次在选择线段的时候,尽可能的选择长的,这里用到了贪心思想#include #include #include using namespace std;struct

2016-04-27 20:47:56 282

原创 uva 10714 Ants

蚂蚁相遇等效蚂蚁忽视碰撞体积穿插而过第一个是表示几组N然后是长度n及蚂蚁数量m接下来是m只分别距离最左边多长#include using namespace std;int main(){ int N; scanf("%d",&N); while(N--) { int n,m; int temp;

2016-04-27 18:38:45 247

原创 uva 102 Ecological Bin Packing

三个杂色箱子分放不同色瓶子#include #include using namespace std;int main(){ char ch[6][4]={"BCG","BGC","CBG","CGB","GBC","GCB"}; int temp[6][9] = { 0,1,1, 1,1,0, 1,0,1, 0,1,1, 1,0,1, 1,1,0,

2016-04-27 17:49:20 306

原创 uva 10154 Weights and Measures

小乌龟的题。每个乌龟有自身重量又有可承载的重量#include #include #include #include using namespace std;const int MAXn = 6000;const int MAX = 0x7ffffff;struct Turtle{ int wei,stg;}t[MAXn];int w,s,n,dp[

2016-04-26 23:18:50 318

原创 lower_bound()和upper_bound()返回值

函数lower_bound()在first和last中的前闭后开区间进行二分查找,返回大于或等于val的第一个元素位置。如果所有元素都小于val,则返回last的位置举例如下:一个数组number序列为:4,10,11,30,69,70,96,100.设要插入数字3,9,111.pos为要插入的位置的下标则pos = lower_bound( number, num

2016-04-25 09:33:12 672

原创 uva 497 Strategic Defense Initiative

求最长公共子序列由于这道题简单,方法多样,博主选了dp做博主为朱老师的弟子#include #include #include #include //#define Tint num1[100000];int num2[100000];int num3[10000][10000];int m;char ch[250];void initial(){ mem

2016-04-25 09:21:05 596 1

原创 uva 10664 Luggage

这一道题和uva562类似 ,题意是:问能否平分行李博主为朱老师的弟子#include #include #include #include using namespace std;const int Max = 102;int coin[Max], dp[Max*500];int sum;int m, n;char ch;void inital(){ mems

2016-04-24 18:47:06 620

原创 uva 10036 Divisibility

给你N个数,在N个数中加入加号或减号,判断能否组成整除K的组合博主为朱老师的学生#include #include #include #include int num[10010];int dp[10010][110];int main(){ int M,N,K; while ( ~scanf("%d",&M)) while ( M --

2016-04-24 17:32:05 349

原创 uva 624 CD

dp流,统计所有可能的情况,并且标记博主为朱老师的学生#include#includeconst int maxn=10001;int n,m,a[30],dp[maxn];bool vis[maxn][30];void inital(){ memset(vis,0,sizeof(vis)); memset(dp,0,sizeof(dp));}int ma

2016-04-24 15:50:12 214

原创 uva 562 Dividing coins

0  1背包问题,遍历一遍就行,不会超时博主为朱老师的学生#include #include #include #include using namespace std;const int Max = 102;int coin[Max], dp[Max*500];int sum;void inital(){ memset(dp, 0, sizeof(dp));

2016-04-24 14:44:34 280

转载 C或C++ 求两个数组相同元素个数

转自:http://blog.csdn.net/beyond_cn/article/details/9981561问:两个数组f[] g[] 长度不定 元素从大到小排列好了 每个数组中元素各不相同 请问如何编程能求两个数组相同元素个数 例如f[4]={1,3,4,7} g[5]={2,3,5,7,8} 有2个相同返回2 并求时间复杂度 最好时间复杂度小点 就是运算次数越少越好答:#includ

2016-04-22 07:36:06 3066

转载 #include<vector> 的用法

转自:http://blog.csdn.net/romantic_love/article/details/7938827C++ vector 用法(#include )标准库Vector类型使用需要的头文件:#include Vector:Vector 是一个类模板。不是一种数据类型。 Vector是一种数据类型。 一、 

2016-04-22 07:34:00 9310

原创 uva 10074 Take the Land

ps:博主为朱老师学生这是一道和uva 108类似的题,值得注意的是最大空地初始为0#include #include #include //#define Tint i,j,k,N,M;int Max;int p;int num1[200][200],num3[200][200];int temp[200];void inital(){ memset(num1,0

2016-04-22 06:44:50 568

原创 uva 108 Maximum Sum

ps :博主为朱老师学生这是一道Maximum sum题,矩阵转换为以为一维最大#include #include #include #define Tint i,j,k,N;int Max;int p;int num1[200][200],num3[200][200];int temp[200];void inital(){ memset(num1,0,sizeo

2016-04-22 06:40:09 263

原创 uva 10684 The jackpot

一道大水题。。。。。。。。#include #include #include using namespace std;int num[10010],sumup[10010];int main(){ int n,i,ans; while(~scanf("%d",&n)&&n) { //ans = 0; for(i=1; i <= n; ++i) { scanf

2016-04-15 14:13:22 307

原创 uva 1396 Slim Span

Kruskal 算法注意数组不要越界,尽量开大点,其他没什么注意,这种算法的水题#include #include #include #include //#define T///////////////using namespace std;const int M = 220;int f[M];struct edge{ int x; int y;

2016-04-15 10:05:31 232

转载 关于创建临界区的问题

转自:http://bbs.csdn.net/topics/390535912#include #include DWORD WINAPI Fun1Proc( LPVOID lpParameter );DWORD WINAPI Fun2Proc( LPVOID lpParameter );int tickets=100;CRITICAL_SECTION g_cs;void

2016-04-14 13:13:10 621

原创 uva 11129 An antiarithmetic permutation

给一个正整数n,构造一个0...n-1的排列,使得这个排列的任何一个长度大于2的子序列都不为等差数列。#include int pre[10005],last[10005];int n;void divide_conquer(int l,int r){ if(l + 1 >= r) return ; int i, j; for(i = l; i

2016-04-13 20:24:38 247

转载 C语言各种数据类型取值范围

转自:http://blog.csdn.net/abaloon/article/details/8173552速查表:char -128 ~ +127 (1 Byte)short -32767 ~ + 32768 (2 Bytes)unsigned short 0 ~ 65536 (2 Bytes)int -2147483648 ~ +2147483647 (4 B

2016-04-13 14:52:32 485

原创 uva 10245 The Closest Pair Problem

这道题是给大家寻开心的,灵光一闪,你就会了,我写这份报告也是寻开心的。。。。。。。。。。。。。。。我就笑了。。。。。你可以先做这一道玩玩。。。哒哒哒。。。。啊啦上海侬#include #include struct point{ double x; double y;};/*struct edge{ point a; point b; doub

2016-04-12 16:09:03 262

转载 memset()函数及其作用

功 能: 将s所指向的某一块内存中的每个字节的内容全部设置为ch指定的ASCII值,  块的大小由第三个参数指定,这个函数通常为新申请的内存做初始化工作  用 法: void *memset(void *s, char ch, unsigned n);  程序例:  #include   #include   #include   int m

2016-04-09 20:50:57 314

原创 uva 574 Sum It Up

这一道题 ,我本以为按常规方法做,以为只要比较前一组输出就行,可后来调试发现,输出竟然与上上一组重复,所以我重新写了好思路形成的代码。代码如下:#include #include #include #include #include #define TESTusing namespace std;int sum1[13],sum2[13],sum3[13],sum4[13];

2016-04-09 20:37:15 546

转载 输入输出重定freopen

使用的理由(范围):如果输入数据很庞大,需要一次又一次的重新输入和调试时可采用本函数。freopen ()函数:1.格式FILE * freopen ( const char * filename, const char * mode, FILE * stream );2.参数说明filename: 要打开的文件名mode: 文件打开的模式,和fop

2016-04-09 17:02:12 767

转载 sort用法

C++sort函数的用法C++sort()函数的用法近来看了c++标准库这本书,学到了很多,就把这其中的一点C++sort()函数的用法写下来和大家分享吧!(一)为什么要用c++标准库里的排序函数Sort()函数是c++一种排序方法之一,学会了这种方法也打消我学习c++以来使用的冒泡排序和选择排序所带来的执行效率不高的问题!因为它使用的排序方法是类似于快排的方法,时间复

2016-04-09 15:11:22 574

原创 uva 216 Getting in Line

这是一道有意思的题,当然一开始看,感觉挺复杂的,后来用了algoritnm中的next_permutation一下子简单化了#include #include #include #include using namespace std;struct point{ double x,y;};struct Dis{ point a,b; double d

2016-04-09 14:42:47 212

原创 uva 166 Making Change

博主有一个通熟易懂的方法解这道题,希望大家喜欢,背包简化,不用数组标记也可以做#include #include #include #include using namespace std;int coin[6] = {1,2,4,10,20,40};int num[6];int store(int n){ int ans = 0; for(int i = 5;

2016-04-09 00:44:03 620

原创 uva 122 Tree Summing

这是一道比较经典的回溯法的水题,运了二叉原理#include #include using namespace std;int back_tracking(int n,int *t);char input();char input(){ char ch; scanf("%c",&ch); while(ch ==' '||ch == '\n') {

2016-04-09 00:35:24 246

原创 uva 167 The Sultan's Successors

这是一题八皇后的题,挺经典的。给你一个k,表示有k组测试,接下来有8x8列,找出 最大皇后位置和最大

2016-04-09 00:28:13 330

程序猿开发idea快捷键.docx

作为程序猿,这里面涵盖了idea最常用以及最好用快捷键,开发者必备快捷键。Ctrl + Alt + b 查看接口实现类中方法(就是我们使用接口编程时,在调用实现类方法处直接Ctrl+鼠标左键方法,只能进入到接口中定义的方法处,但是使用该快捷键则直接到实现类的该方法中了) Alt + Insert set/get; 构造方法; toString; 重写方法 Ctrl+Alt+T 将代码包在一个块中,例如try/catch ;synchronized等 psvm 打印main函数 sout 打印 System.out.println()。。。

2020-04-09

office安装修复软件

解决win7报错,修复window系统。促进office2010安装成功

2016-06-03

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除