本月博客排行
-
第1名
bosschen -
第2名
lerf -
第3名
paulwong - fantaxy025025
- johnsmith9th
- zysnba
- xiangjie88
年度博客排行
-
第1名
青否云后端云 -
第2名
宏天软件 -
第3名
gashero - wy_19921005
- vipbooks
- e_e
- gengyun12
- benladeng5225
- wallimn
- javashop
- ranbuijj
- fantaxy025025
- jickcai
- zw7534313
- qepwqnp
- 解宜然
- ssydxa219
- zysnba
- sam123456gz
- sichunli_030
- tanling8334
- arpenker
- gaojingsong
- xpenxpen
- kaizi1992
- jh108020
- wiseboyloves
- ganxueyun
- xyuma
- wangchen.ily
- xiangjie88
- Jameslyy
- luxurioust
- mengjichen
- lemonhandsome
- jbosscn
- zxq_2017
- nychen2000
- lzyfn123
- wjianwei666
- forestqqqq
- ajinn
- siemens800
- zhanjia
- hanbaohong
- Xeden
- java-007
- 喧嚣求静
- mwhgJava
- kingwell.leng
最新文章列表
HDU 3221 Brute-force Algorithm
/*
* [题意]
* 略
* [解题方法]
* 设g为所求。
* 观察可知:g(1) = a; g(2) = b; g(3) = a*b; g(4) = a*(b^2); g(5) = (a^2)*(b^3)...
* 易得:g(n) = g(n-1)*g(n-2)
* 所以对于a的幂或b的幂有:f(n) = f(n-1)+f(n-2)
* 设矩阵A ...
HDU 2254 奥运
/*
* [题意]
* 给出n条道路,k个询问,每个询问包括起点v1、终点v2、t1天、t2天
* 问从v1到v2走了i天一共有多少走法(mod 2008)?(t1<=i<=t2)
* [解题方法]
* 设B = A^i;
* 则A[u][v] 表示 从u到v走了i天(等价于走了i条边)的走法有多少
* 那么题目就转化为求:C = (A^t1+A^ ...
UVA 10168 Summation of Four Primes
/*
* [题意]
* 将一个数拆成四个素数的和,若不可能,则输出"Impossible."
*
* [解题方法]
* 根据哥德巴赫猜想,大于2的偶数能够分成两个素数的和
* (还没完全得到证明,但在题目所给范围内必然成立)
* 利用这个猜想,只要根据输入的奇偶性,定死前两个素数
* 若输入是奇数,则定为2 3 ? ?
* 若是偶 ...
UVA 10139 Factovisors
/*
* [题意]
* 判断n!是否能被m整除(n!/m = 整数)
*
* [解题方法]
* 对m分解素因子,得出每个素因子的个数
* 若某个素因子个数大于n!中此因子的个数,则不可整除
*/
#include <iostream>
#include <string.h>
#include <stdio.h>
#in ...
UVA 10104 Euclid Problem
新手请进:扩展欧几里德入门
/*
* 直接Egcd就得出|x|+|y|最小的解
* 不知道为什么可以这样,我觉得分4种情况讨论的做法更靠谱些
*/
#include <iostream>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
# ...
UVA 10006 Carmichael Numbers
/*
* [题意]
* 输入n,若满足如下两个条件,则n是Carmichael number
* 1、n不是素数
* 2、对于所有a(2<=a<n),有(a^n)%n = a
*
* [解题方法]
* 快速幂取模,注意运算过程中的乘法溢出int
*/
#include <iostream>
#include &l ...
UVA 10110 Light, more light
/*
* [题意本质]
* 输入n,如果n的约数个数是奇数,输出yes,否则输出no
* (注:n的约数不包括1和n本身,不过包括也不影响奇偶性)
*
* [解题方法]
* 1、最简单普通的做法:
* 枚举i(1<i<=sqrt(n)),累计约数个数,复杂度sqrt(n),结果超时TLE
* 2、素数筛法加速+简单组合数学: ...
《挑战编程》第11章-动态规划
UVa 题号: 10131 Is Bigger Smarter? (越大越聪明?) 题解UVa 题号: 10069 Distinct Subsequences (不同的子序列) 题解UVa 题号: 10154 Weights and Measures (重量和力量) 题解UVa 题号: 116 Unidirectional TSP (单向旅行商问题) 题解UVa 题号: 10003 Cuttin ...
UVA 10201 Adventures in Moving - Part IV
// [解题方法]
// dp[i][j]表示到达第i个加油站剩余油量为j时的最小花费
// 特殊地,dp[n][j]表示到达终点剩余油量为j时的最小花费
// 状态转移:(设w[i]为每个加油站的位置,p[i]为油单价)
// 行驶:dp[i][j-(w[i]-w[i-1])] = dp[i-1][j](0<i<=n)
// 加油:dp[i][j] = ...
UVA 10271 Chopsticks
// [解题方法]
// 将筷子按长度从大到小排序
// 排序原因:
// 由于一组中A<=B<=C
// 选第i根筷子作为A时,必然要选第i-1根作为B,否则不会达到最优
// dp[i][j]表示选了对于前j根筷子选了i个筷子集合时的最小花费
// 设c[j]为选j作为A,j-1作为B时的花费(c[j]=(w[i]-w[i-1])^2;),状态转 ...
UVA 10261 Ferry Loading
// [题意]
// n辆车按顺序安排在一个渡口的左边或右边,不超过渡口长度最多放多少辆
// 相当于n个物品按顺序尽量多地放在两个相同容量的背包里
// 如果放不下后面的就不放了,题目还要求输出要放的车都放哪边?记录路径即可
// 由于是按顺序放,所以第i辆车放的话,i前面的车必然已经放好了,不可能不放
// [解题方法]
// dp[i][j]=1 表示左边车占 ...
UVA 10003 Cutting Sticks
// [解题方法]
// 记忆化搜索(递归,子问题的结果用备忘录存起来,避免重复求解)
// 设棍子长度n,输入的c[i]是棍子上的坐标
// dp[x][y](即dfs(x,y))表示砍c[x]到c[y]段的最小花费
// 每次砍c[x]~c[y]段的时候枚举砍的位置i
// 状态转移:dp[x][y] = min(dp[x][i] + dp[i][y] + c[y]-c ...
UVA 116 Unidirectional TSP
// [解题方法]
// 记忆化搜索(递归,子问题的结果用备忘录存起来,避免重复求解)
// 二维nxt数组按照题意记录路径
// dp[x][y](即dfs(x,y))表示从(x,y)走到最右边需要的最小花费
#include <iostream>
#include <string.h>
#include <stdio.h>
#in ...
UVA 10154 Weights and Measures
// 乌龟塔问题:每个乌龟有力量和重量,求最多能堆多少乌龟?
// 注:乌龟的力量表示背上能承受的重量(包括自己的重量)
// [解题方法]
// 对乌龟数组按力量S从小到大sort(若S一样,无所谓)
// 堆的时候是后面的乌龟堆在下面
// 为什么这样sort得到的结果最好?
// 原因:对于乌龟a和乌龟b,设as<bs,
// 若a能背b,则 ...
UVA 10069 Distinct Subsequences
// [解题方法]
// dp[i][j]表示Z串的[0~i]子串在X串的[0~(j-1)]子串中的出现次数
// 初始化:dp[i][0] = 0
// 状态转移1:
// dp[0][j+1] = (Z[0]==X[j])?(dp[0][j]+1):(dp[0][j])
// 状态转移2(i>0):
// dp[i][j+1] = (Z[i]==X[j])?( ...
UVA 10131 Is Bigger Smarter?
// [解题方法]
// 对大象增加编号属性i,以免排序后丢失
// 对大象数组倒过来sort一下(W大的在前;若W一样,S小的在前)
// 对sort好的数组倒过来dp最长子序列,记录前驱
// 输出路径(由于是倒过来dp,所以输出路径不用栈,不断输出前驱即可)
// 复杂度O(n^2)
#include <iostream>
#include < ...
如何在VC6下使用sqlite3
KIDx的sqlite3笔记
到http://www.sqlite.org/download.html下载:
解压后得到sqlite3.h,得到的其他文件这里不会用到下载第二个,解压后得到sqlite3.dll和sqlite3.def
下面要做的是:利用sqlite3.def生成sqlite3.lib
①把sqlite3.def放到VC6的LIB.exe所在目录,例 ...
【单调队列】HDU 3415 Max Sum of Max-K-sub-sequence
KIDx的解题报告
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3415
题意:给出一个有n个数字的环状序列(其中每个数在-1000到1000之间,且n<=1000 ...
【polya+Euler】HDU 2239 机器人的项链
KIDx的解题报告
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2239
题意:这个项链有n个的珠子组成,珠子的类型有m种,请问能组成多少种不同类型 ...
HDU 1979 Fill the blanks
KIDx的解题报告
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1979
题意:
打表可知只有200+个4位逆素数,然后枚举四个4位逆素数然后暴力检验一下,我的剪枝可能不够直接超时了T-T,打个表存在数组中处理下即可,下面是我的超时代码(只能用来打表了):
#include <iostream>
us ...