- 博客(15)
- 收藏
- 关注
原创 UVa442 Matrix Chain Multiplication(矩阵链乘)
输入n个矩阵的维度和一些矩阵链乘表达式,输出乘法的次数。如果乘法无法进行,输出error。假定A是m*n矩阵,B是n*p矩阵,那么AB是m*p矩阵,乘法次数为 m*n*p 。如果A的列数不等于B的行数,则乘法无法进行。个人博客分析:本题的关键是解析表达式。本体的表达式比较简单,可以用一个栈来完成:遇到字母即入栈,遇到右括号时就出栈并计算,然后结果入栈。因为保证输入合法,所以括号无须入栈。(
2016-05-20 10:59:19 885
原创 学习web前端开发需要怎么学?
假如要学习web前端开发,需求学习啥?难不难?多久能入门?怎样能迅速建一个网站?薪酬能拿到多少?我主张是自学,实在是觉得自个没 有这个才能,的确是需求一个教师的话,那你仍是自个做主找个教师吧!为啥要自学呢,如今的教师水平都能够说是参差不平,命运好,你遇到个好教师,把毕生的经历和窍门都教给了你,命运欠好,遇到个照猫画虎的教师,那你的常识也会仅仅局限于教材!或许还有更差劲的是,学到的书本常识两年前就现
2016-05-20 10:56:44 1038
原创 UVa1592 Database (map)
个人博客题意:存在两个不同行r1,r2和两个不同列c1,c2。是否存在r1,r2和从c1,c2使得(r1,c1)和(r2,c1)相同。分析:可以直接写一个四重循环枚举出r1,r2,c1,c2。理论上是可以的,但实际上却会TLE超时。解决方法是只枚举c1,c2,然后从上往下扫描各行。每次碰到一个新的行r,就把对应c1,c2的内容作为一个二元组存到一个map里,然后如果map的
2016-05-20 10:54:51 676
原创 UVa136 Ugly Numbers (priority_queue)
priority_queue的个人博客常用用法:typedef long long LL;priority_queue,greater >pq; //第一个参数是队列的类型,第二个参数是该队列的底层实现,第三个就是优先级。priority_queue,less >pq; // greater优先级的队列是先出最小值,less优先级的队列是先出最大值。
2016-05-17 14:55:09 523
转载 大整数类运算 BigInteger
当数字超出类型上限就会出现溢出的情形。如果运算结果真的很大,那就需要运用到所谓的高精度运算,即用数组来保存整数,然后模拟手算的形式来实现。但还应考虑一个易用性的问题—如果能像使用int一样方便地使用大整数那该多好!那就是使用struct!个人博客结构体BigInteger可用于储存高精度非负整数1234567
2016-05-17 14:52:52 1953
转载 UVa400 Unix Is
个人博客题目大意: 就是一系列字符串,进行升序排列,再按列优先输出。最右边的一列长度等于最长字符串的长度,剩下的各列都是最长的加2,总长度不能超过60.代码如下:123456789101112131415161718
2016-05-17 14:51:15 493
转载 UVa540 Team Queue (queue)
个人博客思路:利用队列queue定义2个队列,一个是团队队列,一个是团队整体一个队列,然后利用映射map来记录编号。个人博客代码如下:#include #include #include using namespace std;const int maxt=1000+10;int main(){int t,kase=0;while(cin>>t,t)
2016-05-13 13:44:19 423
转载 UVa12096 The SetStack Computer (stack)
个人博客stack(栈),一种符合“后进先出”原则的数据结构。有push和pop两种操作,其中push把元素压入栈顶,pop从栈顶把元素“弹出”。使用栈需在头文件,用stacks,声明一个整数型的栈,s.push()压栈,s.pop()出栈,s.top()取栈顶元素(不删除)。分析:1.题目给定5种操作,每次输出栈顶集合的元素的个数2.利用stack和set来模拟,set保
2016-05-13 13:43:09 459
转载 (STL)map的常用指令
在ACM中常用的指令。map是STL内的一个关联容器,提供一对一的映射,每个关键字(key)在容器中只出现一次,然后提供一个对应的值(value).1.初始化map m;2.插入元素m[1]=”what”,m[2]=”the”//map中最常用的插入添加使用pair插入 Employees.insert(std::
2016-05-13 13:41:47 783
转载 UVa-156 Ananagrams(map映射)
Sample input ladder came tape soon leader acme RIDE lone Dreis peat ScAlE orb eye Rides dealer NotE derail LaCeS drIednoel dire Disk mace Rob dries#
2016-05-09 11:08:09 2348 2
转载 c/c++算法 排列组合问题
个人博客排列表示把集合中元素按照一定的顺序排列起来。组合指从n个不同元素中取出m个元素来组成的一个组,这个组内元素没有顺序。(1)排列问题:{1, 2, 3}的全排列为:123;132;213;231;312;321;这是怎么写出来的呢?先看下面这幅图。将数组看为一个集合,将集合分为两部分:0~s和s~e,其中0~s表示已经选
2016-05-09 11:05:16 750
原创 UVa 110815 Andy’s First Dictionary(set,stringstream)
个人博客思路:利用string和stringstream将句子切分成单词然后存入set,然后利用set集合内部自动排序的功能。注意,需将不是字母的字符变成空格。个人博客代码如下:#include #include#include#includeusing namespace std;serdict;//定义string类的集合
2016-05-09 11:01:24 378
原创 (STL)vector的常用指令
个人博客Vector成员函数函数表述c.assign(beg,end)c.assign(n,elem)将[beg; end)区间中的数据赋值给c。将n个elem的拷贝赋值给c。c.at(idx)传回索引idx所指的数据,如果idx越界,抛出out_of_range。
2016-05-06 14:04:37 1155
原创 UVa 101 The Blocks Problem(vector)
个人博客vecor是一个不定长的数组。“封装”了很多常用的操作在vector内。比如,a.size()读取大小,a.resize()改变大小,a.push_back()向尾部添加元素,a.pop_back()删除最后一个元素,a.clear()清空,a.empty()测试是否为空。vector是一个模板类,需要用vectora或者vectorb这样的声明方式来声明一个vector。vect
2016-05-06 14:03:13 760
原创 5-1 UVa10474 Where is the Marble?
思路:排序后查找。个人博客几个要点函数:ForwardIter lower_bound(ForwardIter first, ForwardIter last,const _Tp& val)算法返回一个非递减序列[first, last)中的第一个大于等于值val的位置。ForwardIter upper_bound(ForwardIter first, ForwardIt
2016-05-06 14:01:15 421
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人