《算法竞赛入门经典》
文章平均质量分 95
这本书很棒!
reasonbao
临渊羡鱼,不如退而结网.
展开
-
8.2.3 二分查找
二分查找递归法代码#include <iostream>using namespace std;//查找序列中是否有元素 elem //二分查找,只适用于在有序序列中查找//时间复杂度O(logn) int BinarySearch(int *A, int elem, int l, int r) { int m = (l + r) / 2; if (A[m] ...原创 2020-04-22 13:03:12 · 111 阅读 · 0 评论 -
8.1 “最大连续合”问题_算法优化
写在前面算法、源码来自《算法竞赛入门经典》第2版 P221,作者刘汝佳。题目描述**最大连续和问题。**给出一个长度为n的序列A1,A2,…,An,求最大连续和。换句话说,即要我们找到一段连续子序列,保证该子序列所有元素之和最大。初始版本1.0算法思想:枚举子序列的起点和终点,计算每种情况的和;渐进时间复杂度:O(n3);#include <iostream>u...原创 2020-04-20 22:13:51 · 271 阅读 · 0 评论 -
UVa12558_Egyptian Fractions (HARD version)
题目题目bala稳稳地超时了O_O…Timi limit//对于整个问题,一头雾水 // 方向________________>>>>>>>>> //那就先弄懂小规模问题: a / b 分解 成三个埃及分数。列出所有情况。 //2020/4/18 //9:00 - 21:30//@reasonbao #includ...原创 2020-04-19 08:46:00 · 158 阅读 · 0 评论 -
7.6 迭代加深搜索_埃及分数问题
bala从一开始的一头雾水,完全不懂如何下手。接着认真再看了紫书、博客,还是不知道怎么下手。期间尝试过跟着别人的代码敲,但,完全不懂他们的思路。本着实践出真知的精神,于是我!!!决定从一个小规模的、比原题简单的问题入手,搞定一个小规模问题,那说不定就能弄懂原题了,照葫芦画瓢嘛。于是我纠结的问题就缩小成了:==输入真分数 a / b,求加数个数为3的情况下的埃及分数解,即把 b / a 表示成...原创 2020-04-18 20:31:51 · 257 阅读 · 2 评论 -
例题 7-4 素数环(Peime Ring Problem, Uva 524)
题目题目传送门啊咧提交代码的时候,第一次PE错误,我想了一下可能是 行末打回车前的空格在作怪,一改,还真是。输出结果的末尾打空格也是不行的,比赛要注意咯。然后,我的代码好花时间呐,没有对比就没有伤害:看我的,我这就去用C++的轮子next_permutation()一遍试试,嘿嘿!AC代码//4/1/20:09 _ 20:40 //@reasonbao//comn on, ...原创 2020-04-02 20:53:32 · 156 阅读 · 0 评论 -
八皇后问题 _ 递归枚举排列法
//八皇后问题初试//根据8个皇后在不同行不同列//步骤:填第一行的皇后、填第二行的皇后(不能与之前的同列)、...、填第八行的皇后//相当于 枚举排列:12345678表示第i(1-8)行皇后在第i(式子里分别代入)列 //排列出一个后,判断是否处于对角线的 //2020/3/31#include <iostream>#include <cstring>#...原创 2020-03-31 09:47:22 · 340 阅读 · 0 评论 -
例题 7-3 分数拆分(Fraction Again?!,Uva 10976)
题目Uva原题传送门首先哇,看了作者的源码我才终于懂了咋写。。。我竟然没想到有y的具体范围了,还知道了k,那不就就可以直接求x了我竟然还想枚举x我竟然还根据输入的最大值给x定了个上限1e9。。。我竟然还不知道判断分数是否为整数,直接判断能否整除就行了我竟然想把那些输出先sprintf()保存到字符数组里,保存x、y的值不就好了我竟然…好了,没了,哈哈哈哈哈哈哈哈哈哈,太年轻啊,...转载 2020-03-21 22:45:25 · 152 阅读 · 0 评论 -
例题 7-2 最大乘积(Maximum Product,UVa 11059)
前言哇,关于这题,我真的有好多话说!!!首先,我这清奇的脑回路,在学暴力求解法这章,但是我的思路并不是暴力解题(好吧其实是因为一开始觉得暴力求解好麻烦,数据量大),花了两个小时把握的思路实现,但是WA了。第一次调试的时候,终于发现了数据溢出了,数据真的好容易溢出,数据真的好容易溢出,数据真的好容易溢出!!!最大值是1e+18,那这时候采用long long int就可以解决问题了,int 为...原创 2020-03-21 16:53:46 · 367 阅读 · 0 评论 -
例题 7-1 除法(Division,Uva 725)
题目UVa 725原题题目AC代码#include <iostream>#include <cstring>using namespace std;int Judge(int a, int b) { int temp[10]; memset(temp, 0, sizeof(temp)); int mm = 0; while(1) { temp[m...原创 2020-03-20 16:30:38 · 215 阅读 · 0 评论 -
7.2.1 递归生成排列
递归生成排列(按字典序顺序)啊西,还不是很理解,懵懵懵懵啊——2020/03/20#include <iostream>using namespace std;//cur表示已经填好的位置个数 void PrintPermutation(int n, int *A, int cur) { if (n == cur) { for (int i = 0; i <...原创 2020-03-20 10:46:37 · 122 阅读 · 0 评论 -
(超简单易懂)《算法竞赛入门经典》(第2版) 习题3-8循环小数 UVa202
前言从这题我真的体会到了 “题题平等”,题目短它就简单了吗,题目长它就难了吗?虽然大部分情况下简单的题目是比较短,等下等下,再往下讲我觉得都上升到人生问题了,以上,END。:)...转载 2020-03-10 09:28:22 · 356 阅读 · 0 评论 -
《算法竞赛入门经典》(第2版) 习题3-6 纵横字谜的答案
题目英文原题传送门:[https://vjudge.net/problem#OJId=UVA&probNum=232&title=&source=&category=all](https://vjudge.net/problem#OJId=UVA&probNum=232&title=&source=&category=all)思...原创 2020-03-07 19:49:53 · 254 阅读 · 0 评论 -
第五章:STL初步
过了一遍(没看懂多少,小声比比:好歹翻完了),发现STL真的功能强大,里面的容器、sstream头文件里的各种字符串骚操作,这些轮子好强大,开始刷题,一点一点学stl。附我做的第一张思维导图:...原创 2020-03-07 16:27:34 · 58 阅读 · 0 评论 -
关于浮点误差,1为何变成0.999999 ?
引言之前在紫书里看到一些例题里 说要加上很小的实数,防止浮点误差造成结果错误。当时,我还不以为然,觉得为啥会出现误差???然后,今天试了一下以下这段代码,用for循环将2不断减去0.000001(10的-6次方)直到等于1。#include <iostream>using namespace std;int main() { double f; for (f = 2; f...原创 2020-03-03 09:15:05 · 4631 阅读 · 1 评论 -
《算法竞赛入门经典》(第2版) 习题3-5 谜题
题目习题3-5 谜题(Puzzle,ACM/ICPC World Finals 1993,UVa227)一个5*5的网格中恰好有一个格子是空的,其他格子各有一个字母,四条指令A,B,L,R分别表示将空格上、下、左、右移动。输入初始网格(以Z结束)和一串指令(以0结束),输出执行操作后的网格。越界则输出“This puzzle has no final configuration.”。UVa上......原创 2020-02-17 12:00:29 · 660 阅读 · 8 评论 -
《算法竞赛入门经典》(第2版) 习题3-4 周期串
题目习题3-4 周期串(Periodic Strings, UVa455)如果一个字符串可以由某个长度为k的字符串重复多次得到,则称该串以k为周期。 例如,abcabcabcabc以3为周期(注意,它也以6和12为周期)。输入一个长度不超过80的字符串,输出其最小周期。Uva的OJ上的英文原题解题思路求最小周期串,那就从长度1开始遍历,找到一个满足条件的最小字符子串即可。我提交了五六次...原创 2020-02-16 10:43:30 · 515 阅读 · 0 评论 -
《算法竞赛入门经典》(第2版)习题 3-2 分子量
题目分子量(Molar Mass, ACM/ICPC Seoul 2007, UVa1586)给出一种物质的分子式(不带括号),求分子量。本题中的分子式只包含4种原子,分别为C,H,O,N,原子量分别为12.01,1.008,16.00,14.01(单位:g/mol)。例如,C6H5OH的分子量为94.108g/mol。在UVa上的英文原题如下:An organic compound is...原创 2020-02-15 17:23:42 · 531 阅读 · 0 评论 -
《算法竞赛入门经典》2.0_第二章_bonus
习题2-4 子序列的和(subsequence)输入两个正整数n<m<106,输出 ,保留5位小数。输入包含多组数据, 结束标记为n=m=0。提示:本题有陷阱。样例输入:2 465536 6553600 0样例输出:Case 1: 0.42361Case 2: 0.00001收获这题看起来简单,但是敲完,然后书本给的测试数据都过不了。输出:2 4Case 1: 0.423...原创 2020-02-07 12:25:54 · 286 阅读 · 0 评论