2012年3月29日
摘要:
1. 简单题#include #include using namespace std; int main()
{ int n, i, ans, t[11], s; while (cin >> n) { if (n == -1) break; memset(t, 0, sizeof(t)); ans = 0; for (i = 1; i > s >> t[i]; ans += s * (t[i] - t[i-1]); } ... 阅读全文
摘要:
1. 简单题,故意用了栈,另外从这个题上可以体会到OJ判题模式#include #include #include using namespace std; int main()
{
// freopen("input.txt", "r", stdin);
// freopen("output.txt", "w", stdout); stack st; int i, j, n; string str; for (i = 1; ; i++) { cin >> n; if (n == 0) ... 阅读全文
摘要:
1. 指针可以操作数组元素#include using namespace std;
int main()
{ int a[5] = {1, 2, 3, 4, 5}; int *p = &a[2]; cout << p[1] << ' ' << p[-2] << endl;
}
2. 阅读全文
2012年3月28日
摘要:
1. 这道题根本不会做,直接看的别人的解体报告,看了别人的解题报告的算法说明,还是不会做,只好看代码了;2. 这篇博客写得比我写得好(http://jovesky.info/blog/2011/08/12/poj-1057-file-mapping-c-edition/),我就是看人家的看懂的;3. 递归+vector,一层套一层,以后还得看看怎么做的。现在思路会了,但是vector还是不会用,上午刚看了primer还是不会用,另外细节问题很繁琐,日后就是为了学递归也得再做一遍这道题。#include #include #include #include using namespace... 阅读全文
摘要:
1. 根本没有思路,看到如下的解释,才明白怎么做: 这个题目很经典的说,O(N^3)的DP。 首先偶们考察这样的题目,简化版: 已知一列数,求任意连续若干个数和的最大值。 SAMPLE: 3 2 -6 2 -1 7 原数3 2 -6 2 -1 7 处理3 5 -1 2 1 8 因为是连续若干个自然数的和,那么,前面的某个数字取与不取的条件在于:以前面这个数字为结尾的连续数的和最大值是否大于0,如果大于0,那么这个数字必然要会出现在包括数字的序列中,否则无法做到最大... 阅读全文
2012年3月27日
摘要:
1. 一下午就做了这么一道题,蛋疼的模拟题。刚开始没有考虑当超过100的时候怎么处理,一直WA,上网看解题报告才知道。。。2. memset()函数的用法。只能初始化为0或者-1。当初始值为其他数时,是在每一位上是这个数(这句话没明白),记住只能把数组初始化为0或者-1就行了;3. 此题属于模拟题,不得不说,模拟题的if语句就是多啊;#include #include using namespace std; int main()
{ int step[100], map[101], turn[7], cur[7]; int step_num, i, peo, sx, e... 阅读全文
2012年3月26日
摘要:
1. C++中string类的练习,使用的数据结构慢慢地开始有心得了;2. string类中的+=操作符和append( )函数的使用;3. 这道题很简单,开始出错是因为string类型的变量没有初始化。string str = "";//初始化为空字符串;4. 推荐一个c++的网站(cplusplus.com - The C++ Resources Network)。#include #include #include using namespace std;
struct type
{ string str; char let; int len;
}ltr[3... 阅读全文
摘要:
1. 好久没碰到这种难度的题了:看题没思路,经过思考,推算,一次AC。以前的题要不太难,只能看解题报告,要不太简单,不用思考,这种难度的题正好适合我;2. 具体思路是通过P序列还原成括号序列,然后通过括号序列得到W序列的值。注意map[ p[ i ] + i] = ‘)’。通过flag数组标记“)”之前的没有匹配的左括号;3. 这道题属于模拟题(以后知道题的类型就分个类);#include #include using namespace std; int main()
{ int i, j, k, tmp, t, n; int P, W[22], map[50], fl... 阅读全文
摘要:
1.物理题,不会求解。。。参考(http://blog.csdn.net/uestcshe/article/details/5621292)推出的公式,直接算出结果的;2. 第一次使用iostream输出有要求的小数。原来在书上看到的cout
#include using namespace std; int main()
{ double Vs, R, C, w, Vr; int n; cin >> Vs >> R >> C >> n; while (n--) { cin >> w; Vr = Vs * R * C ... 阅读全文
摘要:
1.题目的大意是给定三个数a1, a2, a3,求出一个数,这个数除以23, 28, 33得到的余数为a1, a2, a3;2.从网上查到用中国余数定理,以下是找到的资料:若某数x分别被d1、、…、dn除得的余数为r1、r2、…、rn,则可表示为下式:x=R1r1+R2r2+…+Rnrn+RD其中R1是d2、d3、…、dn的公倍数,而且被d1除,余数为1;R1 、R2…、Rn是d1、d2、…、dn-1的公倍数,而且被dn除,余数为1;D是d1、d2、…、的最小公倍数;R是任意整数,可根据实际需要决定;且d1、、…、必须互质,以保证每个Ri(i=1,2,…,n)都能求得.根据上面的条件求出常数R 阅读全文
|