- 博客(33)
- 资源 (1)
- 收藏
- 关注
原创 hud 1255 覆盖的面积(线段树+离散化)
题目的意思就不用再翻译了我也是第一次接触离散化,所以理解的也不怎么样。 离散化,把无限空间中无限的个体映射到有限的空间中去,以此提高算法的时空效率。离散化是程序设计中一个非常常用的技巧,它可以有效的降低时间和空间复杂度。其基本思想就是在众多可能的情况中“只考虑我需要用的值”。下面我将用三个例子说明,如何运用离散化改进一个低效的,甚至根本不可能实现的算法。 《算法艺术与信息学竞赛》中的计算几何部分
2016-08-31 15:51:40 368
原创 zzuli oj 1917: E
Description晴天有非常严重的选择恐惧症,每次吃饭前他都在纠结到底吃什么。。今天又到了吃饭的时候了。重光:我给你一个包含n个不同整数的序列a,如果它所有连续子序列的价值和是素数咱们就吃米,不然就吃面。定义一个序列的价值为序列中所有元素的最小值。晴天:这不是分分钟给你算出来。嗯…十分钟过去了,晴天选择死亡。这个任务就交给你啦。算出所有连续子序列的价值和。Input第一行输入一个整数t,代表有t
2016-08-27 14:03:26 429
原创 hdu 5867
题目链接“直接模拟,不过我比较笨花了好长时间#include<stdio.h>#include<iostream>#include<algorithm>#include<map>#include<string.h>using namespace std;int a[1010];int b[1010]= {0,3,3,5,4,4,3,5,5,4,3,6,6,8,8,7,7,9,8,8,
2016-08-18 17:12:28 566
原创 hdu 2553 N皇后问题(dfs+回溯)
题目链接点这里N皇后和八皇后是一样的 ,在小白书的123页,我今天也是刚学,做的第一个题,还是我看的书代码如下#include<stdio.h>#include<iostream>#include<string.h>using namespace std;int vis[3][23],p[15];int n,sum;void dfs(int row){ if(row==n+1)
2016-08-16 17:58:07 288
原创 组合数(神搜)和全排列(递归)
1 组合数 小白书53页上写的组合数中间会乘法溢出,作者举个反例告诉我们:即使你认为题目在“暗示”你使用某种语言特性,也应该深入分析,不能贸然行事。 正确的组合数写法,#include<stdio.h>#include<iostream>using namespace std;int a[12];int m,n;void dfs(int m,int n){ for(int
2016-08-16 09:46:16 631
原创 hud 5826 physics(积分)
题目链接题意:给出几个初速度,初位置,以及小球运动的方向,速度和加速度一直在改变,但是速度和加速度的方向是同向,且一直满足C=V*a,问第k小速度是多少 思路:在比赛的时候就一直在想这个问题,速度和加速度一直都在改变,刚开始推出个公式,没有用微积分,结果错了,然后又想了想,用积分但是不知道怎么下手,直到比赛结束题解:速度和加速度都在改变所以,我们来用微元法:考虑一段极小的时间间隔:dt. 速度增量
2016-08-16 09:28:02 287
原创 hdu 5842 (字符串最长上升子序列)
题目链接这道题就是让转化成自然数,然后排一下序求最小上升子序列的代码#include<stdio.h>#include<iostream>#include<algorithm>#include<string.h>#include<map>#include<queue>#define LL long longusing namespace std;const int N=100005;
2016-08-15 17:35:40 508
原创 hdu 5832 A water problem(大数取模)
题目链接思路:大数取模,73*137=10001,所以对10001取模代码#include<stdio.h>#include<iostream>#include<algorithm>#include<string.h>#include<map>#include<queue>#define LL long longusing namespace std;const int N=100
2016-08-15 17:28:45 243
原创 hdu 5835 Danganronpa
题目链接题意:可能我感觉题我都读了两遍了,还感觉我是不是,题意理解错了,因为当时很蒙,所以也是没有思路,我就没有做这道题,后来我没有看队友A了,我就感觉应该不难吧,就是n种礼物,每种礼物就a[i]个,让满足每个人都有一个神秘礼物和普通礼物,并且相邻的桌子上不能放同一种的礼物,神秘礼物没限制,礼物是连续的放的,问最多可以有所少人得到礼物。思路:我们可以很容易的发现,很多结果都是sum/2,但是并不是都
2016-08-15 17:19:19 423
原创 总结
感觉自己想出来一道题的思路,然后去AC它的感觉特别的棒,我好像很长时间都没有了,我的脑子肯定生锈了,心里好难过啊,我平时养成的习惯不好,总是不爱动脑子,所以导致现在越学感觉越差了,这也是很令我失望啊,所以,以后我要勤加练习动脑子,慢慢去A题,看看我现在的样子,学了那么长时间效率也不高,心里太难受了,以前那个爱动脑子的我去哪里了,我啊,太受环境的影响了,我好想有个安静的环境,就我自己在独自深沉地思考,
2016-08-15 16:58:11 184
原创 hdu 1728 逃离迷宫(dfs+剪枝)
这里写链接内容题目意思:不用翻译了,就是给定一个最多转弯的数目,让求如果她所走的转弯次数不超过k,问她能不能到达目的地思路:这道题刚开始用的广搜,中间出现了很多bug 都来跳不出来了,又看看博客,广搜就是在一个方向上一直搜,搜不到了换方向,直到搜到为止且转弯数小于等于k,这是广搜的思路#include<stdio.h>#include<iostream>#include<algorithm>
2016-08-15 14:29:43 486
原创 1908: 小火山的围棋梦想
题目链接天啊,这道题我调代码调了一天啊,代码能力太差,我也没有办法,,一天才调出来,心也赛赛的,天啊BFS#include<stdio.h>#include<stack>#include<iostream>#include<string.h>#include<algorithm>#include<queue>#include<string.h>#define LL long long
2016-08-12 13:28:49 415
原创 ZZULIOJ 1913: 小火山的计算能力(栈模拟)
Description别人说小火山的计算能力不行,小火山很生气,于是他想证明自己,现在有一个表达式,他想计算出来。Input首先是一个t(1<=20)表示测试组数。然后一个表达式,表达式长度不超过200,只有加法和减法,并且保证第一个字符不会是运算符号,最终结果小于2^63-1。Output输出运算结果。Sample Input2 1+1 2+1-1 Sample Output2 2比赛的时
2016-08-11 09:11:43 323
原创 ZZULIOJ (1913: 小火山的计算能力)
Description别人说小火山的计算能力不行,小火山很生气,于是他想证明自己,现在有一个表达式,他想计算出来。Input首先是一个t(1<=20)表示测试组数。然后一个表达式,表达式长度不超过200,只有加法和减法,并且保证第一个字符不会是运算符号,最终结果小于2^63-1。Output输出运算结果。Sample Input2 1+1 2+1-1 Sample Output2 2 这道
2016-08-10 18:42:49 268
原创 CodeForces 2A Winner(map模拟)
The winner of the card game popular in Berland “Berlogging” is determined according to the following rules. If at the end of the game there is only one player with the maximum number of points, he is t
2016-08-10 18:37:03 318
原创 ZZULIOJ 1905 小火山的跳子游戏(数学思维题)
Description 小火山和火山火山在一块玩跳子游戏。规则如下: 1:跳子的起始位置为0,棋盘大小从1到N 2:每次跳子跳k步。 例如当前位置为i, 那么下一步为i + k 3:跳子过程中,碰到1或N则往回跳。例如当前位置为4, N = 6, K = 5的时候, 那么下次跳子, 应该是 5, 6, 5 ,4, 3。最后落在3的位置, 再一次跳子为2 1 2
2016-08-10 18:32:14 406
原创 Aizu 2224 (最大生成树,并查集)
Description Nicholas Y. Alford was a cat lover. He had a garden in a village and kept many cats in his garden. The cats were so cute that people in the village also loved them. One day, an evil witch
2016-08-09 18:05:34 745
原创 总结 总结
感觉好失落啊,我曾经的热血在哪里啊,曾经说过的话都忘了吗,我变的懒惰,散漫,现在,贪心题都做了那么多了,为什么我见到题,感觉没思路似的,我现在每天都学的什么啊,感觉没一点长进,什么都不懂,什么都不会,还每天都感觉挺累的,这是我吗,我怎么变成这副模样,让我恶心,更让我心寒,以前的你到底死哪里去了,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
2016-08-08 15:12:55 245
原创 lightoj 1198(贪心)
Description Your karate club challenged another karate club in your town. Each club enters N players into the match, and each player plays one game against a player from the other team. Each game that
2016-08-08 15:07:40 213
原创 hdu 1754 I Hate it(线段树的单节点更新,求区间最大值)
Problem Description 很多学校流行一种比较的习惯。老师们很喜欢询问,从某某到某某当中,分数最高的是多少。 这让很多学生很反感。不管你喜不喜欢,现在需要你做的是,就是按照老师的要求,写一个程序,模拟老师的询问。当然,老师有时候需要更新某位同学的成绩。Input 本题目包含多组测试,请处理到文件结束。 在每个测试的第一行,有两个正整数 N 和 M ( 0#include<std
2016-08-06 11:39:29 245
原创 poj 3984 (bfs+输出路径)
Description定义一个二维数组: 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表示可以走的路,只能横着走或竖着走,不能斜着走,要求编程序找出从左上角到右下角的最短路线。 Input一个5 × 5的二维数组,表示一个迷宫
2016-08-06 08:54:04 701
原创 尼姆博弈(巴什博奕)
(3)尼姆博弈 有三堆各若干个物品,两个人轮流从某一堆取任意多的物品,规定每次至少取一个,多者不限,最后取光者得胜。 这种情况最有意思,它与二进制有密切关系,我们用(a,b,c)表示某种局势,首先(0,0,0)显然是奇异局势,无论谁面对奇异局势,都必然失败。第二种奇异局势是(0,n,n),只要与对手拿走一样多的物品,最后都将导致(0,0,0)。仔细分析一下,(1,2,3)也是奇异局势,无论对手如
2016-08-05 18:56:40 671
原创 HDU2188(巴什博奕)
Problem Description 对于四川同胞遭受的灾难,全国人民纷纷伸出援助之手,几乎每个省市都派出了大量的救援人员,这其中包括抢险救灾的武警部队,治疗和防疫的医护人员,以及进行心理疏导的心理学专家。根据要求,我校也有一个奔赴灾区救灾的名额,由于广大师生报名踊跃,学校不得不进行选拔来决定最后的人选。经过多轮的考核,形势逐渐明朗,最后的名额将在“林队”和“徐队”之间产生。但是很巧合,2个人的
2016-08-05 18:40:43 253
原创 郑轻 oj 1895: 985的0-1串难题
Description985有一个长度为n的0-1串,已知他最多可以修改k次(每次修改一个字符即0->1 或者 1->0),他想知道连续的全1子串最长是多少。Input第一行输入一个整数t,代表有t组测试数据。 每组数据第一行输入两个整数n,k分别代笔上面的信息。 注:1 <= t <= 12,1 <= n <= 100000,0 <= k <= 100000。 Output一个整数代表可以得
2016-08-05 08:56:02 938
原创 ZZULIOJ (郑轻) 1898(找规律)
Description985有n个数,已知每次操作可以将其中不相同的两个数一个加一、一个减一,操作次数不限。 问他最多可以得到多少个相同的数。 Input第一行输入一个整数t,代表有t组测试数据。 每组数据占两行,第一行输入一个n代表元素个数,下面一行输入n个整数a[]。 注:1 <= t <= 30,1 <= n <= 1e4,1 <= a[] <= 1e3。 Output输出一个整数代
2016-08-04 18:27:14 427
原创 hdu 1166 (线段树单节点更新,区间和)
点击打开链接http://acm.hdu.edu.cn/showproblem.php?pid=1166题意在这里我就不说了,感觉好坑啊,因为最后的输出格式就一直错因为,我没有加 :这个符号这是简单的线段树题,主要就体现了,建树 ,更新,查询的功能,不是太理解,看模板打下来的。还能算是理解点,以后慢慢深入吧嘿 ,看我的代码,希望能够帮助你哦 !!!!!!!!
2016-08-04 18:06:54 214
原创 hdu 5783 Divide the Sequence
Problem Description Alice has a sequence A, She wants to split A into as much as possible continuous subsequences, satisfying that for each subsequence, every its prefix sum is not small than 0.Input
2016-08-03 10:38:13 347
原创 选择不相交区间问题 (贪心)
数轴上有n个开区间(ai,bi),选择尽量多个区间,使得这些区间两两没有公共点。#include<stdio.h>#include<iostream>#include<string.h>#include<algorithm>using namespace std;int n;struct node{ int l; int r;}ss[1000];int cmp(no
2016-08-03 10:30:27 784
原创 乘船问题(贪心小白书)
有n个人,第i个人重量为wi,每艘船的最大载重量均为C ,且最多只能乘两个人,用最少的船装载所以的人。 #include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<string>#include<set>...
2016-08-03 10:26:04 1376
原创 hdu 5775 Bubble Sort
http://acm.hdu.edu.cn/showproblem.php?pid=5775题意:让一列数进行冒泡排序,问排序过程中,最左边到最右边的差的绝对值。 思路:我感觉,这道题的难点就是用树状数组或者是线段数去求,每个数其后比它小的个数,然后最右边的位置是初始位置加上比它小的个数减去min(初始位置和,最终位置)最小的那个我是用的树状数组#include<bits/stdc++.h>
2016-08-02 10:48:44 484
原创 poj 2155 Matrix (二维树状数组)
题目链接http://poj.org/problem?id=2155题意 :这是我第一次做二维的树状数组,说实话我刚开始没看懂题的意思,然后再网上搜了一下博客,还是没懂,后来让同学给我讲了一下,我理解了,意思就是,给你一个矩阵,这个矩阵的初始值都为0 ,然后让你从左上角(x1,y2)到右下角(x2,y2)改变这个矩阵,值为1 的改为0,为0的话改为1, 然后再给出(x1,y1),查找a[x1,y1]
2016-08-01 18:11:25 261
原创 hdu 1004 (map的用法以及非map的用法)
http://acm.hdu.edu.cn/showproblem.php?pid=1004题目意思:就是给n个字符串,在这些字符串中求哪个哪个字符串出现最多得那个字符串 思路:这个题可以用map,也可以不用map是个神奇的东西//map容器的使用#include<stdio.h>#include<iostream>#include<string.h>#include<map>usin
2016-08-01 11:22:39 737
原创 二维树状数组模板
const int MAX=1200;int c[MAX][MAX];int n;int LowBit(int t){ return t&(-t);}int Sum(int endx,int endy){ int sum=0; int temp=endy; while(endx>0) { endy=temp;//
2016-08-01 10:39:34 221
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人