上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 21 下一页
摘要: 题意很简单, 有n种硬币,每种硬币面额多大,有多少个,求可以构成m以内的面额有多少种。开始用的是普通的多重背包的求法,裸裸的超时了,看了别人的代码,发现可以优化很多。用usea这个来存储用来多少个a硬币,避免的很多无用的计算。先贴以前超时的代码#include #include int dp[100005];int coin[101];int cnt[101];int used[1000101];int main(){ int n, k; while(scanf("%d %d", &n, &k)) { if (n==0 && k==0) b. 阅读全文
posted @ 2013-10-03 17:11 xindoo 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 这道题第一眼看去很难,其实不然,短短几行代码就搞定了。 说一下大概思路,如果是排成一排的n个人,如 1 2 3 4 5 6 7 8 我们要变成 8 7 6 5 4 3 2 1 需要交换 28次,找规律的话就是 n*(n-1)/2,但这道题是一个圈,要让他们顺序变反的话不一定1要在8的位置上去,4 3 2 1 8 7 6 5 这样也是反的,我们只要把n个人分成两部分,然后按拍成一条线的方法来出来两部分就OK了;#include #include using namespace std;int main(){ int n, t; cin >> t; while (t--) ... 阅读全文
posted @ 2013-10-03 16:34 xindoo 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 题目意思很容易理解,学校有n个社团,每个社团只给编号从a到b的发传单,而且只给隔了c的人发,问最后谁收到的传单是单数,输出他的编号和收到的传单数量。昨天做这题的时候看见很多人过了,感觉不会很难,但是打死都想不出来,看了别人的思路,一下子就想通了。这里我简要说一下,用二分,我们可以很容易求出一段区间里的总的传单数,因为保证最多有一个是单数,我们就看单数在哪边。下面是java代码,刚开始学java,代码不是很简洁。import java.util.Scanner;public class Main { static long[] a = new long[20005]; static long[] 阅读全文
posted @ 2013-09-29 09:06 xindoo 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 给你一个序列,让你求(x1 - x2) + (x2 - x3) + ... + (xn - 1 - xn).值最大的一个序列,我们化简一下公式就会发现(x1 - x2) + (x2 - x3) + ... + (xn - 1 - xn). = x1 - xn, 也就是说只有第一个和最后一个是确定的,其他的随便了! 也不是了, 还要让你按字典序最小的排列,也就是说其他的是按飞递减序排列的,简单的一次排序就OK了。//2013-09-21-09.07#include #include using namespace std;int a[120];bool cmp(int x, int y){ .. 阅读全文
posted @ 2013-09-21 09:11 xindoo 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 题意就是给出3个原子的化学价,然后组成一个分子,要保证这个分子是稳定的,如果你还记得高中化学知识的话这个很容易理解,然后让你求出1-2 2-3 1-3 号原子之间有几条键, 这里我分别用ta tb tc 表示, 用数学的方法表示出来的话就是a = tc + tb; b = ta+tc; c = ta + tb;可能有多种情况,只要输出一种即可。 我们随便找其中一个原子,然后从0开始枚举它到b原子有多少键,根据上面的式子,可以计算出到c原子的键,然后就可以知另外两个原子间的键值,做一次判断即可,无需判断a = tc + tb; b = ta+tc; c = ta + tb; 因为计算工... 阅读全文
posted @ 2013-09-19 16:07 xindoo 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 我先解释一下汉明距离 以下来自百度百科在信息论中,两个等长字符串之间的汉明距离是两个字符串对应位置的字符不同的个数。换句话说,它就是将 一个字符串变换成另外一个字符串所需要替换的字符个数。 例如:* 1 与 0 之间的汉明距离是 1。* 214 与 214 之间的汉明距离是 0。* "abcd" 与 "aacd" 之间的汉明距离是 1。汉明重量是字符串相对于同样长度的零字符串的汉明距离,也就是说,它是字符串中非零的元素个数:对于二进制字符串来说,就是 1 的个数,所以 11101 的汉明重量是 4。汉明距离在信息论、密码学等方向有很重要的应用。这个题是让 阅读全文
posted @ 2013-09-08 21:02 xindoo 阅读(214) 评论(0) 推荐(0) 编辑
摘要: 题目意思就是用a-z组成一个N,然后到z后又跳回a,输出宽从3到10的N。#include #include char s[14][15];int main(){ int cnt = 0; for (int kase = 3; kase <= 10; kase++) { memset(s, ' ', sizeof(s)); for (int i = 1; i <= kase; i++) { for (int j = 1; j <= kase; j++) { cn... 阅读全文
posted @ 2013-09-08 20:27 xindoo 阅读(154) 评论(0) 推荐(0) 编辑
摘要: #include #include const int maxn = 1000006;bool vis[1000006];int pr[1000005];int cnt = 1;int bs(int l, int r, int v){ int mid=(l+r)>>1; while(l > 1; } return l;}void getpr(){ int i,j; for(i=2;i*i<maxn;i++) if(!vis[i]) { pr[cnt++]=i; for(j=i*i;j<maxn;j+=i) vis[j]=1;... 阅读全文
posted @ 2013-09-08 20:25 xindoo 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 把输入的数加起来,输入0表示结束。先看我Java代码,用BigINteger类很多东西都不需要考虑,比如前导0什么的,很方便。不过java效率低点,平均用时600ms,C/C++可以0ms过。import java.math.BigInteger;import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner cin = new Scanner(System.in); BigInteger sum = BigInteger.valueOf(0); BigIntege... 阅读全文
posted @ 2013-09-07 10:26 xindoo 阅读(240) 评论(0) 推荐(0) 编辑
摘要: 要说到网协的名人,在咱们学院,乃至学校,都是数不胜数的。下面就来为大家介绍一下。 说道网协,自然要问道,网协是谁建立起来的呢?哈哈!这就推到了咱们的创始人之一——姜金男学长!他也是著名的“理工之窗”网站的创始人和现任站长(相信大家都有访问过http://www.qdlg.cn/);协会另一创始人杨长升学长在大一时就已经参加过程序竞赛,并且在抗击甲流期间,连熬夜几晚,为学生处开发了隔离学生信息系统。这两位学长,在学院历老师的带领下,建立了咱们现在庞大的网协!可谓是功不可没啊! 另一位不得不提的人物!也就是网协的前任会长!计算082的赵聪学长,更是我们学院的骄傲!曾多次在全国的软件比赛中获得... 阅读全文
posted @ 2013-09-07 08:48 xindoo 阅读(311) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 21 下一页