HDOJ
WGH_yesterday
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
HDOJ 3833 YY's new problem
//4360643 2011-08-08 15:04:56 Accepted 3833 2671MS 224K 804 B C++ ylwh!#include int main(){ int t, n, i, j, k, ans, temp, s[10001]; sca原创 2011-08-08 15:22:29 · 715 阅读 · 0 评论 -
hdoj 1059 Dividing【DP-多重背包】
/*145153 2012-02-01 19:49:03 Accepted 3.3.1 218MS 220K 1270B G++ ylwh145151 2012-02-01 19:48:06 Accepted 3.3.1 187MS 220K 1242B G++ ylwh145150 2012-02-01 19:47:03 Pres原创 2012-02-01 19:53:02 · 1035 阅读 · 0 评论 -
hdoj 1133 Buy the Ticket 【DP】【java】【水】
import java.util.Scanner; import java.math.BigInteger; public class Main { public static void main(String[] args){ Scanner input = new Scanner(System.in); BigInteger[][] flag = new BigIntege原创 2011-12-31 21:10:12 · 1014 阅读 · 0 评论 -
hdoj 2044 一只小蜜蜂...【水】
#include int main(){ long long flag[51] = {0, 1, 1}; for(int i=3; i<51; i++){ flag[i] = flag[i-1] + flag[i-2]; } int n, a, b; scanf("%d", &n); while(n--) { scanf("%d%d", &a, &b); printf原创 2011-12-31 22:14:56 · 1059 阅读 · 0 评论 -
hdoj 2050 折线分割平面【DP】【水】
使折线的夹角尽可能小,这样可以看成一条射线,则最大的情况便是所有射线不平行,对于第n条折线,其一条边与前n-1条边相交可以增加2*(n-1)个区域,这条折线的头部又成一块,所以是2*(n-1)+1+f(n-1)#include int main(){ long long flag[10001] = {0, 2, 7}; for(int i=3; i<10001; i++) fl原创 2012-01-01 12:46:00 · 870 阅读 · 0 评论 -
hdoj 1443 Joseph【水】
#include int main(){ int n; int flag[14] = {0, 2,7,5,30,169,441,1872,7632,1740,93313,459901,1358657,2504881}; while(scanf("%d", &n)!=EOF && n) printf("%d\n", flag[n]); return 0;}刚开始没有打表竟原创 2011-12-24 00:14:51 · 989 阅读 · 0 评论 -
hdoj 3466 Proud Merchants 【DP】【01背包】
因为剩余金额会对状态产生影响,所以应该先处理p-q较小的#include #include #include #define N 501#define M 5001typedef struct _node{ int p, q, v;}node;node s[N];int comp(const void *a, const void *b){ int m = ((node*)原创 2012-02-15 18:55:17 · 965 阅读 · 0 评论 -
hdoj 2199 Can you solve this equation?【二分查找】【水】
OMG。。。刚开始用float wa了,改成double就过了#include double f[100*10000+5];int bsearch(int s, int e, double v){ int m = (s + e) / 2; if(m == s || m == e) return (v - f[s]) < (f[e] - v) ? s : e; e原创 2012-02-16 23:30:39 · 1338 阅读 · 0 评论 -
hdoj 1864 最大报销额 【DP】【01背包】【水】
题意理解错了,以为是单个物品不能超过600了#include #include #define N 31bool f[30*1000*100+1];int main(){ int flag, n, m, i, j, q, price, sum, pa, pb, pc; char type; float temp; while(scanf("%f%d", &t原创 2012-02-16 22:53:24 · 1059 阅读 · 0 评论 -
hdoj 3496 Watch The Movie【二维背包】【DP】
/*不优化会超时~,OMG。。。*/#include #include #define N 105#define M 105#define L 1005int max(int a, int b){ return a > b ? a : b; }int f[M][L];int main(){ int t, n, m, l, w, v, ans; int i, j, k;原创 2012-02-15 16:33:51 · 767 阅读 · 0 评论 -
hdoj 1754 【线段树】
#include #include #include #define LS(x) (x<<1)#define RS(x) (x<<1|1)#define P(x) (x>>1)#define MAXLEN 200005#define PAUSE system("pause")using namespace std;int a[MAXLEN<<2];int n;void bu原创 2012-07-23 17:29:22 · 820 阅读 · 0 评论 -
hdoj 1166 敌兵布阵 【线段树】
//学习线段树Ing 看的这篇blog :http://www.notonlysuccess.com/index.php/segment-tree-complete/ 稍微改了一下#include #define LSON(x) x<<1#define RSON(x) x<<1|1#define MAXLEN 50005int sum[MAXLEN<<2];int L, R;voi原创 2012-07-23 15:47:49 · 827 阅读 · 0 评论 -
hdoj 2795 Billboard 【线段树】
#include #include #include #include #include #include #include #include #include #define L(x) (x<<1)#define R(x) (x<<1|1)#define P(x) (x>>1)#define PAUSE system("pause)using namespace std原创 2012-07-27 15:14:23 · 894 阅读 · 0 评论 -
poj 3468 A Simple Problem with Integers【线段树】
#include #include #include #include #include #include #include #include #include #include #define L(x) (x<<1)#define R(x) (x<<1|1)#define P(x) (x>>1)#define LL long long#define PAUSE sys转载 2012-07-27 16:43:58 · 828 阅读 · 0 评论 -
hdoj 1698 Just a Hook 【线段树】
#include #include #include #include #include #include #include #include #include #define L(x) (x<<1)#define R(x) (x<<1|1)#define P(x) (x>>1)#define PAUSE system("pause)using namespace std原创 2012-07-27 15:11:15 · 953 阅读 · 0 评论 -
hdoj 2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活【DP-多重背包】【水】
#include #include #define MAX 200int f[MAX], v_max;int _max(int a, int b){ return a > b ? a : b;}void ZeroOnePack(int cost, int weight){ for(int v = v_max; v >= cost; v--) f[v] = _max(f[v], f原创 2012-02-01 20:44:30 · 1477 阅读 · 0 评论 -
hdoj 2571 命运 【DP】【水】
/*很水的dp,不过中间竟然把一个变量写错了,wa了好多次,纠结啊~~*/#include #include const int inf=~0U>>1;inline int max(int a, int b){ return a > b ? a : b;}int main(){ int f[22][1002], temp, t, n, m; scanf("%d",原创 2012-01-17 16:57:28 · 987 阅读 · 0 评论 -
HDOJ 3835 R(N)
//4359928 2011-08-08 13:40:09 Accepted 3835 31MS 176K 526 B C ylwh!#include #include int main(){ int n, i, j, counts, p, q; while(scan原创 2011-08-08 13:41:50 · 512 阅读 · 0 评论 -
HDOJ 2059 龟兔赛跑 【DP】
http://acm.hdu.edu.cn/showproblem.php?pid=2059//4427480 2011-08-16 15:40:49 Accepted 2059 15MS 176K 1191 B C ylwh!//4427520 2011-08-16原创 2011-08-16 15:46:32 · 1079 阅读 · 0 评论 -
HDOJ 1248 寒冰王座【DP】【完全背包】
//4470320 2011-08-22 16:10:25 Accepted 1248 156MS 360K 536 B C 刷媛姐刷过的题#include #define T 101#define N 10001int a[4][N];int max(int x, i原创 2011-08-22 16:13:43 · 865 阅读 · 0 评论 -
HDOJ 2087 剪花布条【KMP】
#include #include #include #define MAX 1001int next[MAX];char s[MAX], q[MAX];void getNext(char s[]){ int i, j; j = -1; next[0] = -1; for(i=1; i<strlen(s); i++) { while(j >= 0 && s[j+1] !原创 2011-11-19 06:43:09 · 666 阅读 · 0 评论 -
hdoj 2629 Identity Card【操蛋题】
很操蛋的题,月份和日必须用字符串读取和输出,即如果是1月1号的话,输出是01,01,。。。。。#include #include #define P(n) printf(n);break;int main(){ char day[3], mouth[3], s[5]; int n, from, year; scanf("%d", &n); while(n--) { sca原创 2011-11-09 21:55:03 · 1755 阅读 · 0 评论 -
hdoj 1717 小数化分数2【水】
/*循环小数化分数:小数形式:循环部分&循环部分 【&】表示连接 分数形式: (非循环部分&循环部分)/( (10^(循环节位数)-1)^(非循环节位数) )例:0.32(692307)32692307 / 99999900 = 17/52 注意的输入:0.00(1) */#include#include #include #include #include #def原创 2011-12-01 00:04:43 · 1044 阅读 · 0 评论 -
HDOJ 2037 今年暑假不AC 【暴力解决】⊙﹏⊙b汗
#include #include using namespace std;#define PLINE printf("\n------------------\n")struct time{ int s,e;}t[101];int n, ans;bool cmp(struct time a, struct time b){ return a.s < b.s;}voi原创 2011-11-11 11:16:19 · 783 阅读 · 0 评论 -
hdoj 1286 找新朋友【水】
#include #include #include #include using namespace std;bool flag[32768],staue[32768];inline void makePrime(){ int i, j; for(i=2; i<sqrt(32768); i++) if(flag[i] == true) for(j = i + i;原创 2011-12-02 01:13:24 · 1144 阅读 · 0 评论 -
hdoj 1997 汉诺塔VII【水】
#include #include /* hanio函数:表示当前的任务是将大小为floor的盘子从from移动到to,当然这个盘子如果在mid(另外一个柱子)上时就证明这不是最优序列, 如果在from上时就可以推出大小为floor-1的盘子的任务是从from移动到mid,如果floor在to上时则floor-1的任务是从mid移动到to上*/int h[3][64], tai原创 2011-12-26 11:15:42 · 2664 阅读 · 0 评论 -
hdoj 1134 Game of Connections【水】【java】
import java.util.Scanner;import java.math.BigInteger;import java.math.BigDecimal;public class Main { public static void main(String[] args) { int n=0; BigInteger[] ans = new BigInteger[101]原创 2011-12-27 03:35:50 · 1002 阅读 · 0 评论 -
hdoj 1250 Hat's Fibonacci【java】【水】
import java.util.Scanner;import java.math.BigInteger;import java.math.BigDecimal;public class Main { public static void main(String[] args) { int n=0; BigInteger temp = (new BigDecimal("10E2原创 2011-12-27 01:07:12 · 887 阅读 · 0 评论 -
hdoj 2067 小兔的棋盘【水】【dp】
#include #include #define MAX 40int main(){ long long flag[MAX][MAX]; for(int i=0; i<=35; i++) flag[0][i] = 1; for(int i=1; i<=35; i++) for(int j=1; j<=35; j++) if(i == j) flag[i][j]原创 2011-12-28 20:35:45 · 883 阅读 · 0 评论 -
hdoj 2604 Queuing
╮(╯▽╰)╭,不会做,看了别人的blog也不会,根本不知道怎么推出的递推式,后来看到这里有了思路:http://blog.youkuaiyun.com/xiaotaoqibao/article/details/5786436原理就是为求f(n)可以由比它短的合法串组成,显然要从与它长度相差最小的几个来找,而且与较短串相加的最短串前两位不能出现f,而且不能重复。原创 2012-01-15 20:22:14 · 884 阅读 · 0 评论 -
hdoj 1058 Humble Numbers【dp】
#include int pos[4] = {1, 1, 1, 1};const int flag[4] = {2, 3, 5, 7};int mul[4] = {2, 3, 5, 7};int hum[5845] = {0, 1, 2};inline int getMin()//每次加入数列的数显然都是2,3,5或7乘以一个数,这个数必然要从数列中取,然后取最小值。{ int m原创 2012-01-17 15:07:17 · 868 阅读 · 0 评论 -
hdu 1540 线段树
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1540题意:有n个点依次链接,先给出三种操作:删除某个点 修复某个点 查询与某个点相连的点的个数解法:主要是query函数的写法。利用回溯,分情况判断左/右是否联通。注意自定义的结构一定要赋初值。 #include iostream>#include s原创 2012-10-15 20:39:48 · 883 阅读 · 0 评论
分享