摘要: 这是用eclipse写的第一个程序,还是感觉不太顺手,用多了应该就好了,这道题也没什么说的,看懂题,排个序就好了,直接贴代码//============================================================================// Name : main.cpp// Author : // Version :// Copyright : Your copyright notice// Description : Hello World in C++, Ansi-style//================================= 阅读全文
posted @ 2011-05-13 15:14 KOKO's 阅读(172) 评论(0) 推荐(0) 编辑
摘要: 这个太水了,没什么说的,看懂题意即可#include <iostream>#include <cstdio>#include <cmath>#include <cstring>using namespace std;long long ans;int len;char s[100];int main(){ while(gets(s)&&s[0]!='0') { len = strlen(s); ans = 0; for(int i = 0;i < len;i++) { ans += (pow(2, len-i 阅读全文
posted @ 2011-05-13 01:12 KOKO's 阅读(89) 评论(0) 推荐(0) 编辑
摘要: 一开始没想到什么好的方法,一看数据那么大,感觉得用大数,但又不会写大数。只能看别人怎么做的了。发现一个极好的东西,pow函数可以对浮点型运算,所以只需读入时按照浮点型读入,输出时不输出小数部分即可,完全用不上大数。。。。直接无语了。。。#include <iostream>#include <cmath>#include <cstdio>using namespace std;double n, p;int main(){ while(scanf("%lf%lf", &n, &p)!=EOF) { printf(" 阅读全文
posted @ 2011-05-13 01:11 KOKO's 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 我的思路是将数据按照小的在前存入结构体数组,从前往后看是否配对,后来发现可能会有3个1,2,一个2,1的情况我这样做的结果应该还是正确的,就把第一位和第二位分别存在两个数组里,分别排序,看是否一一对应,这样的话应该就能保证符合题意了。刚才看了看别人的做法,发现竟然二维数组也能过,看来数据不算很强,仅仅把n设到了最大500000,并没有把一一对应的点设这么大还有一个分别把两个数组排序一下竟然也能过。。还有一个说的比较高深,代码也比较长,不过应该是比较靠谱:使用快排预处理,逐个配对,同时使用hash判重,期间要使用二分查找。注意这个二分查找有点特别,先是找到被处理对象的位置,然后再这个区间查找。下 阅读全文
posted @ 2011-05-13 01:10 KOKO's 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 这道题其实说白了就是处理sort的cmp函数,其实就是比较两个连起来的话哪个放前面会更大一些,思路只要想通就很好实现了#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>#include <string>using namespace std;int n;string s[100];bool cmp(string a, string b){ string c, d; c = a+b; d = b+a; return c.compare(d) 阅读全文
posted @ 2011-05-13 01:06 KOKO's 阅读(195) 评论(0) 推荐(0) 编辑