自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 Telephone Lines架设电话线

写了快两个礼拜的最短路和生成树,也不算是入门,遇见这个题,发先要用二分。 我在二分方面就是一个白痴,后面才知道因为题目的要求是只给你提供k个电线杆的连接,所以我们只需要用二分来求得所需买的最短长度就ok。 FarmerJohn打算将电话线引到自己的农场,但电信公司并不打算为他提供免费服务。于是,FJ必须为此向电信公司 支付一定的费用。FJ的农场周围分布着N(1<=N<=1,000...

2018-11-28 20:26:09 446

原创 免费馅饼

首先应该明白他在当前的这个位置有3种选择,在下一秒的时候他可以选择向左或者向右或者呆在原地不动,而且在当前的这一秒他会接住落在当前这一秒的数目。所以dp方程就写出来了;dp[i][j]=max(dp[i+1][j-1],dp[i+1][j],dp[i+1][j+1]+data[i][j],表示为在第i秒的j位置它应该如何选择。   都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,...

2018-11-13 16:54:04 381

原创 Piggy-Bank

这是一道完全背包模板题。它的大意就是说给你一个硬币罐子的容量,然后给你不同种类的硬币,价值和重量各不相同。然后采取01背包的思想,不过要先将dp设置为最大值,然后再按照从小的重量到极限的重量来dp就可以了; Before ACM can do anything, a budget must be prepared and the necessary financial support obtai...

2018-11-07 20:24:47 161

原创 饭卡

这是一道01背包的一道变形的题。首先,它要求的是大于5快的时候价值任何大的物品都可以买,小于五块的时候价值任何小的东西都不能买,所以,我先对他进行了排序。把价值最大那个保留下来,让它最后一个大于等于五块的时候再减。然后就是利用01背包的一半思路来解决这个问题就 电子科大本部食堂的饭卡有一种很诡异的设计,即在购买之前判断余额。如果购买一个商品之前,卡上的剩余金额大于或等于5元,就一定可以购买成功(...

2018-11-06 16:14:53 204

原创 Common Subsequence

这道题就是典型的dp求最长公共子序列。 主要的判断条件就是:1.如果m=n,那么就在dp[i-1][j-1]的基础上加1;                                     如果不是就是在之前的数上取得最大值。 A subsequence of a given sequence is the given sequence with some elements (poss...

2018-11-06 15:55:46 159

原创 Max Sum

这道题是一道很基础的dp题,就是求简单的最大子段和然后找出是从哪到哪。 只需要新开一个数组pre来记录它的开始点就可以了。   Given a sequence a[1],a[2],a[3]......a[n], your job is to calculate the max sum of a sub-sequence. For example, given (6,-1,5,4,-7), ...

2018-11-06 15:52:02 176

转载 Almost Union-Find

这个题是一个合并并查集节点的一道题,首先要明白的是并起来的元素就相当于一颗二叉树一样,所以不可能随便的将一个二叉树的根节点删除掉,所以我们只能让它保持在她的原位但是废弃掉它所有的功能。所以,我们需要给每一个节点都给他一张能识别它的身份证,当我们要废除掉一个节点的时候,先废除掉她的功能,然后新开一个点来表示它,再把它和别的节点合并起来。 #include<bits/stdc++.h>...

2018-11-02 20:31:51 312

原创 Fire Game

这道题最开始的时候不太明白它讲的什么意思,后来看了下大神的讲解才算是懂了一点。他是从任意同时选中两块草地,将两块草地同时push进入队列,然后再进行广搜就行。 #include<cstdio> #include<iostream> #include<cstring> #include<queue> using namespace std; int...

2018-11-02 20:27:13 184

原创 Dungeon Master

这是一个三维立体图的一道搜索题。 和普通的二维搜索差不多,不过就是多了一个纵坐标z,然后设置结构体将他放入结构体中,按照以前的方式按部就班的做就可以AC,不过一定要注意它的越界条件,当它>=边界的时候就会算作是越界了。 You are trapped in a 3D dungeon and need to find the quickest way out! The dungeon is...

2018-11-01 21:24:39 253

空空如也

空空如也

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

TA关注的人

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