![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
基本算法
gfz15110
编程小白~~
展开
-
POJ2109——Power of Cryptography
题目链接:点击打开链接 题目大意为输入n(1 由于题目中n,p,k皆为整数,可以考虑用double来存大数,double数据范围有300多位,但是只能精确表示前16位,所以用的时候要保证是整数。转换一下k可以被表示为p^(1/n),这样就可以用pow函数来求k了。 //272K 0MS //C++ 169B #include #include using namespac原创 2016-08-04 14:37:01 · 169 阅读 · 0 评论 -
POJ1753-Flip Game
题目链接:点击打开链接 题目大意为给出4*4的棋盘落有黑棋‘b'与白棋’w',每次翻转可以将上下左右和它本身变为另一种颜色,求最少反转多少次可以将棋盘上的棋变为全黑或者全白。 一步步的dfs。。。 //164K 204MS //C++ 1297B #include int step,flag; int map[4][4]; void turn (int i,int j)//反转棋子 {原创 2016-08-04 14:58:18 · 171 阅读 · 0 评论 -
POJ2965-The Pilots Brothers' refrigerator
题目链接:点击打开链接 题目大意为给出一个4*4的图,由+,-两种符号构成,反转一次可以将其所在行和列都换为另一种符号,求反转多少次可以使符号全变成+,输出次数和翻转的坐标。 ps:这个题和poj1753差不多,只要会保存路径就好了。 //164K 672MS //C++ 1230B #include int step,flag; char map[4][4]; struct node原创 2016-08-04 19:58:57 · 166 阅读 · 0 评论 -
POJ2586-Y2K Accounting Bug
题目链接:点击打开链接 贪心水题,题意非常的谜,大意是给出每个月可能的盈利和赤字,每5月的统计都是亏损,问一年盈利了多少,或者亏损。 //164K 0M //C++ 397B #include int main() { int i,j,k; long long int sum=0; while(~scanf("%d%d",&j,&k)) {原创 2016-08-04 21:12:44 · 242 阅读 · 0 评论 -
POJ1328-Radar Installation
此题链接:点击打开链接 题目大意是给出岛屿的数量n和雷达的覆盖半径d,然后给出n组岛屿坐标,问最少需要多少雷达可以覆盖所有岛屿。 这个题可以换个思路(并没有思路),通过岛的坐标(直角边)和雷达半径(斜边)求出雷达所能覆盖此岛可能所在的区间,算是个区间覆盖问题。这样将区间尾端 按从小到大排序后找到第一个区间的尾端作为第一个雷达的位置,这样才能保证覆盖到最外端的岛屿,遍历一遍所有区间,若区间前端原创 2016-08-04 21:07:36 · 179 阅读 · 0 评论 -
POJ2524-Ubiquitous Religions
题目链接:点击打开链接 并查集水题,给出同学数量n,和m组关系,接下来的m组数表示这两个同兄在一个社团,求社团(根)的数量。 //360K 391MS //C++ 665B #include #include #define N 55555 int n,m,s[N],sum; int main() { int i,n,m,x,y,l=0,sum; while(~scanf原创 2016-08-04 21:29:56 · 238 阅读 · 0 评论 -
POJ3295-Tautology
题目链接:点击打开链接 题目大意是根据给出的运算法则,判断式子是否真,变量有5个,枚举所有可能值,其中有假就为假。 //164K 0MS //C++ 1899B #include #include #define abs(i) (i>=0?i:-i) int p,q,r,s,t; char str[111]; int st[111]; void x() { int top=0;原创 2016-08-16 20:45:34 · 181 阅读 · 0 评论 -
POJ2506-Tiling
题目链接:http://poj.org/problem?id=2506 一个模拟的大数的递推水题(虽然并不会推),递推公式为:a[i]=a[i-1]+a[i-2]*2。逐个计算每一位就好。 //264K 0MS //C++ 550B #include #include int a[251][100]; int main() { int i,n,k,j; memset(a,原创 2016-08-16 20:08:13 · 260 阅读 · 0 评论