- 博客(13)
- 资源 (1)
- 收藏
- 关注
原创 QMenu初试
之前学QMenu只知道可以添加QAction,今天通过查看文档,对QMenu有了个大概的认识。QMenu可以添加的有四种:separators, actions that show a submenu, widgets, and actions that perform an action.添加的方法主要有三种:addAction(),addActions() and inse
2013-06-20 21:42:08 1753
原创 hdu1789 Doing Homework again
解题思路:动态规划 || 贪心太水了,没想到贪心。。。还不会写贪心版。。。。动态规划的马马虎虎过。。。可能有漏洞状态转移方程:d[i][j] = max(d[i-1][j], d[i-1][j-1]+b[i], d[i][j-1])条件:先按时间排序,少的在前,如果相同,罚的,大的在前i : 第几个科目j : 天数b[] :罚的数量AC代码:#i
2013-06-18 00:08:31 473
原创 hdu2059 龟兔赛跑
解题思路:动态规划状态转移方程:d[i] = max(d[k] + TT) (0TT : k点充电,从k到i点距离时间总共n+2点,n个充电站+起点+终点AC代码:#include #include #include #include #include using namespace std;#define clr(p,v) memset(p,v,si
2013-06-17 23:59:51 481
原创 信号槽
信号槽是Qt的一大特征,刚开始学Qt,主要是从豆子空间那学习的。信号槽机制功能类似观察者模式。通过QObject的connect()函数连接起来。Qt5中,connect()函数有5个重载:QMetaObject::Connection connect(const QObject *, const char *, const
2013-06-17 00:41:16 507
原创 hdu2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活
解题思路:多重背包AC代码:#include #include #include #include #include using namespace std;#define clr(p,v) memset(p,v,sizeof(p))const int maxn = 100010 ;int n, m, C;int d[110];void zeroOnePa
2013-06-16 23:34:11 516
原创 hdu1114 Piggy-Bank
解题思路:完全背包注意要初始 d[0] = 0AC代码:#include #include #include #include #include using namespace std;#define clr(p,v) memset(p,v,sizeof(p))const int maxn = 10010 ;int n, m, C;int d[maxn
2013-06-16 23:32:23 461
原创 hdu1422 重温世界杯
解题思路:动态规划先预处理:对于每一个城市,生活费-花费,得到一个数。接着就是求最大连续子序列和(这题是统计个数),这就算是经典问题吧。状态转移方程:d[i] = d[i-1]+a[i] >= 0 ? d[i-1]+a[i] : 0AC代码:#include #include #include #include #include using names
2013-06-16 23:29:10 702
原创 hdu1864 最大报销额
解题思路:0/1背包把实数转成整数,背包只适用整数,*100即可可以报销的票,要么选,要么不选,且只能选一次。不可报销的票:票价>1000,A、B、C类单项>600,注意,一张票可能A类出现不止一次。0/1背包关键代码:for (int i=1; i=a[i]; --j) d[j] = max(d[j], d[j-a[i]]+a[i]);AC代码:
2013-06-15 23:29:06 405
原创 hdu1176 免费馅饼
解题思路:动态规划可以看成倒的塔,这个地方转换过来就快了,状态转移方程:d[i][j] = max(d[i+1][j-1], d[i+1][j], d[i+1][j-1])最后答案是d[0][6]AC代码:#include #include #include #include #include using namespace std;#define clr
2013-06-15 23:21:57 402
原创 hdu2571 命运
解题思路:动态规划,从左上到右下状态转移方程:d[i][j] = max(d[i-1][j], d[i][j-1], d[i][k]) + a[i][j] (kAC代码:#include #include #include #include #include using namespace std;#define clr(p,v) memset(p,v,s
2013-06-15 23:16:36 424
原创 hdu1087 Super Jumping! Jumping! Jumping!
解题思路:最大递增序列,动态规划状态转移方程:d[i] = max(d[j]+a[i]) (0a[j])AC代码:#include #include #include #include #include using namespace std;#define clr(p,v) memset(p,v,sizeof(p))const int maxn = 101
2013-06-15 23:10:43 439
原创 名字空间(namespace)
作用:缓解名字污染。 访问名字空间内成员、类的三种方式:1、名字空间别名namespace International_Business_Machines{int a;....}//别名namespace IBM = International_Business_MachinesIBM::a = 100;以关键字namespace开头,且最后没有“;”号。
2013-06-10 23:04:34 672
原创 动态分配的对象(dynamically allocated object)
动态分配的对象被分配在程序的空闲存储区free store 的可用内存池中。C++中一般用new来申请内存,delete来撤消new申请的内存。 new有三种形式: 1、支持单个对象动态分配 例如: int *p;p = new int;支持的类型有内置类型:int, double, char ....还有自定义的类、结构体
2013-06-09 16:53:55 1316
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人