自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (1)
  • 收藏
  • 关注

原创 uvaoj 12124 - Assemble

题解:二分 总结:注意每个1e9,因为他们随时可能超精度#include<cstdio>#include<iostream>#include<cstring>#include<vector>#include<map>using namespace std;#define MAXN 1010struct Component{ int price,quality;};vec

2015-10-31 17:24:24 487

原创 effective c++:必须返回对象时,别妄想返回其reference

class Rational{public: Rational(int numerator = 0,int denominator = 1) { this -> n = numerator; this -> d = denominator; }private: friend const Rational operator*(con

2015-10-31 15:49:40 474

原创 effective c++:宁以pass-by-reference-to-const替代pass-by-value

class People{public: People() { cout << " construct fun " << endl; } People(const People& i) :a(i.a) { cout << " copy construct " << endl; } People &op

2015-10-31 00:42:13 599

原创 uvaoj 1169 Robotruck

题解: 1.注意输出格式 总结: 1.保持编程风格一致是一个避免出错的好主意 2.做事保持冷静,今天碰到一些影响心情的事情,也算是没有受到太大的影响,感觉这样很好。冷静是很多好习惯的基础!一定要继续努力,保持冷静客观 3.下一步就是总结发生问题的地方,做到不再犯同样的错误了,甚至总结出为何我会发生这样的错误#include<iostream>#include<cstring>#incl

2015-10-30 21:38:57 521

原创 uvaoj 1352 Colored Cubes

大模拟 每日一题#include<iostream>#include<cstdio>#include<cstring>#include<vector>#include<string>#include<map>using namespace std;int dice[24][6] = {{0,1,2,4,3,5},{5,3,4,2,1,0},{1,2,0,3,5,4},{4,0,2,5

2015-10-29 23:07:41 453

原创 effective c++让接口容易被正确使用,不易被误用

class Month{public: static Month Jan(){return Month(1);} static Month Feb(){return Month(2);} //......private: explicit Month(int i):val(i){} int val;};class Year{public:

2015-10-28 21:48:19 475

原创 uvaoj 10859 - Placing Lampposts

题解: 1.将放置最少的街灯等价为最多地方没有放置街灯个数为x 2.被两个街灯照亮的边数为b 3.k > b的最大值 4.y = kx + b,找到最大的y 5.树形dp 总结: 1.将问题归一化,减少了很多无谓的操作和变量,将两个变量编码成一个数值#include<iostream>#include<cstdio>#include<cstring>#include<vector

2015-10-28 20:27:31 379

原创 effective c++以独立语句将newed对象植入智能指针

int priority(){}struct Widget{};void processWidget(shared_ptr<Widget>pw,int priority){}int main(){ processWidget(new Widget,priority()); //产生编译错误,因为shared_ptr构造函数需要一个原始指针 //但是该构造函数是一个ex

2015-10-27 15:12:45 520 1

原创 uvaoj 11464 - Even Parity

用宏定义好爽#include<iostream>#include<cstring>#include<cstdio>using namespace std;#define MAXN 17#define F(i,n) for(int i = 0;i < (n);i++)#define INF 0x3f3f3f3fbool A[MAXN][MAXN],B[MAXN][MAXN];int _

2015-10-27 14:20:21 387

原创 uvaoj 1030 - Image Is Everything

总结: 1.以前看过汝佳哥源代码,没有打在电脑里提交,自以为会了,最近重新做题的时候才发现原来只是看懂了,自己并不能很快的思考出来这个问题,以后凡是碰到代码,尽所能付诸于实践!以写代码,写博客的形式,以检验是否真的明白了 2.感觉自己快要完全想出解决方案的时候,没有坚持思考完就去看汝佳哥的方法了,以后还是要,即使觉得自己应该没问题的时候,也要先自己完整的想出解题策略,再看大神的代码,进行学习

2015-10-26 19:28:30 402

原创 effective c++成对使用new 和 delete时要采取相同形式

string *str1 = new string;delete str1;//删除一个对象string *str2 = new string[100];delete []str2;//删除一个由对象组成的数组如果使用delete[] str1或者delete str2都是未定义的 数组所用的指针通常还包括数组大小的记录,以便delete知道需要调用多少次析构函数 编译器往往会这么实现对象

2015-10-26 11:16:35 477

原创 effective c++在资源管理类中提供对原始资源的访问

有关访问资源管理类中的原生指针#include <iostream>#include <cstdio>using namespace std;struct FontHandle{};FontHandle getFont(){}void releaseFont(FontHandle f){}class Font//资源管理类{public: explicit Font(Font

2015-10-25 23:27:03 674

原创 uvaoj 10253 - Series-Parallel Networks

题解: 1.将这道题的模型抽象成一棵树,计算它有多少种形态 2.树这样定义,从父节点开始,将并联在一起的图形尽可能拆开,使得子节点不存在可拆的并联网络;再将子节点所代表的图形拆成尽可能多的串联网络,这样交替下去,直到拆成不能拆的叶子节点为止。 3.对于某一层出现2,2,3这种情况,用隔板法解决就好 总结: 1.啊,真是太久没有做acm题了,脑子都木了,感觉最近总是睡得晚白天也不是很困,但是

2015-10-25 01:05:36 350

原创 effective c++ 在资源管理类中小心copying 行为

资源取得时机便是初始化时机class Mutex{};void lock(Mutex* p){}void unlock(Mutex* p){}class Lock{public: explicit Lock(Mutex *p) :mutexPtr(p) { lock(mutexPtr); } ~Lock() {

2015-10-24 20:05:25 426

原创 安装xv6笔记

os:ubuntu 14.04 首先安装qemu sudo apt-get install libsdl1.2-dev sudo apt-get install qemu 然后下载xv6 wget https://github.com/run/xv6/archive/master.zip 解压 unzip master.zip 进入xv6文件夹下 cd xv6-master 装载

2015-10-18 14:37:21 5020

原创 uvaoj 10795 - A Different Task

题解: 1.汉诺塔问题,试图将初始情况和终止情况通过一个中间状态联系在一起 总结: 1.这几天一直在想uvaoj 10253,感觉有点小坎还没有想出来,感觉以后应该明确解题思路后再写题,这样效率会高一些,嗯,写的过程中发现有些问题没有考虑到,暂时没有想出怎么做,下面再捋一遍这道题的思路,也许会比较好,因为对这道题的思路都是片段化 + 试代码试出来的。 2.以后写题,不管有多大的把握,或者多着

2015-10-06 23:31:02 437

原创 uvaoj 11384 Help is needed for Dexter

题解: 1.发现二分比直接算快一些 2.证明发现二分比三分快一些#include<iostream>#include<cstring>#include<cstdio>using namespace std;#define MAXN 1e9int main(){ int n; while(cin >> n) { int cnt = 0;

2015-10-04 23:50:36 427

原创 uvaoj 11825 - Hackers' Crackdown

题解: 1.状态压缩动态规划,f(s) = max(f(s - s0) & s0 覆盖全局) + 1; 总结: 1.这个题目没有自己想出来,因为没有把握好解题的方法,其实并不是非常难。动态规划的题目首先应该简单的尝试写一下转移方程,也许后面就可以豁然开朗了 2.学习到了枚举某个集合的所有子集,以后学习新的知识,应该首先自己尝试简单的思考,再去看答案,这样可以吸收更多一些#include<io

2015-10-03 21:17:48 466

原创 effective c++ 以对象管理资源

void f(){ Investment *p = creatInvestment(); //......... delete p;}1.如果在…中有一个return 2.在…中抛出了一个异常 3.或者delete动作位于某个循环中,被continue,或者goto 就会泄漏p指向的那块资源。 为确保creatInvestment()返回的资源总是被释放掉,我们需

2015-10-02 21:46:30 399

原创 uvaoj 11796 - Dog Distance

题解: 1.发现两条线的距离变化有时候是呈一次函数,有时候呈二次变化,所以对于处理二次变化的时候比较麻烦 2.两个点的变化,想象成一个点不动,另一个点是两个点的运动叠加 总结: 1.没有想出来这道题目,今天有些感冒,感觉头脑不利索,想起题目来总是不转,以后碰到这种情况,应该做些别的不太用动脑子也可以做的事情,提高工作效率 2.对于这道题,总结一下:减少变量,简化题目的思想,就像一道题目(例

2015-10-02 20:06:41 521

Feature Extraction

harris corner的推导方式。包括很多种类型的关键点的寻找,概要实现方法

2015-11-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除