2013腾讯马拉松初赛第一场(3.21)比赛(hdu4505、hdu4506、hdu4508、hdu4509)
来源:互联网 发布:遗传算法 优缺 编辑:程序博客网 时间:2024/04/27 15:48
先把这个做过的报告分享下。
1、地址:http://acm.hdu.edu.cn/showproblem.php?pid=4505
此题目比较简单,解法可以有很多,我采用了标记数组的方法。也可以直接 排序,然后for循环 求出
5 、地址:http://acm.hdu.edu.cn/showproblem.php?pid=4509
题目简单。数组 区域覆盖。可以得到结果。
1、地址:http://acm.hdu.edu.cn/showproblem.php?pid=4505
此题目比较简单,解法可以有很多,我采用了标记数组的方法。也可以直接 排序,然后for循环 求出
#include<iostream>#include<cstring>using namespace std;int main(){int C,N,a[105];cin>>C;while(C--){cin>>N;int i,x,T,sum;memset(a,0,sizeof(a));for(i=0;i<N;i++){cin>>x;a[x]++;}T=0,sum=0;for(i=0;i<=100;i++){if(a[i]){sum+=6*(i-T);sum+=5;sum+=a[i];T=i;}}sum+=4*T;cout<<sum<<endl;}return 0;}
2、地址:http://acm.hdu.edu.cn/showproblem.php?pid=4506
此题 快速幂求余,
#include <iostream>#include <cstdio>#include <cstring>using namespace std;#define MAXN 10010#define MOD 1000000007__int64 num[MAXN];int ans[MAXN];//int POW(__int64 k,int t){ if(t == 0) return 1; __int64 r = 1; while(t > 1) { if(t&1)//t&1 如果是偶数 不执行 r = (r*k)%MOD; k = (k*k)%MOD; t /= 2; } return (r*k)%MOD;}//int main(){ int T,i,j,n,t,k,p; __int64 tmp; scanf("%d",&T); while(T--) { scanf("%d%d%d",&n,&t,&k); for(i = 0; i < n; i++) scanf("%d",&num[i]); p = t%n; tmp = POW(k,t); for(i = 0; i < n; i++) { j = (i + p)%n; ans[j] = (num[i] * tmp)%MOD; } printf("%d",ans[0]); for(i = 1; i < n; i++) printf(" %d",ans[i]); printf("\n"); } return 0;}
3、暂时没明白(思考中) 按位dp
4、 地址:http://acm.hdu.edu.cn/showproblem.php?pid=4508
完全背包。背包 9讲 看懂了 碰见背包的题目就 很easy。背包9讲很强大啊,需要耐心看。我还需要继续努力。
#include <iostream>#include <cstdio>#include <cstring>using namespace std;#define MAXN 100005#define Max(a,b) (a)>(b)?(a):(b)int dp[MAXN];int main(){ int n,w[110],v[110],nMax,i,j; while(scanf("%d",&n)!=EOF) { for(i = 0; i < n; i++) scanf("%d%d",&v[i],&w[i]); scanf("%d",&nMax); memset(dp,0,sizeof(dp)); for(i = 0; i < n; i++) { for(j = w[i]; j <= nMax; j++) { dp[j] = Max(dp[j],dp[j-w[i]] + v[i]); } } printf("%d\n",dp[nMax]); } return 0;}
5 、地址:http://acm.hdu.edu.cn/showproblem.php?pid=4509
题目简单。数组 区域覆盖。可以得到结果。
#include<iostream>#include<cstring>#include<cstdio>using namespace std;int main(){int n;int time[1500];while(cin>>n){int a1,a2,b1,b2,a,b;int i,sum;memset(time,-1,sizeof(time));while(n--){scanf("%d:%d %d:%d",&a1,&a2,&b1,&b2);a=a1*60+a2,b=b1*60+b2;memset(time+a,0,(b-a)*sizeof(int));}sum=0;for(i=0;i<1440;i++){if(time[i])sum++;}printf("%d\n",sum);}return 0;}
- 2013腾讯马拉松初赛第一场(3.21)比赛(hdu4505、hdu4506、hdu4508、hdu4509)
- 第二届腾讯编程马拉松初赛第一场。。hdu4505 hdu4506 hdu4507 hdu4508 hdu4509(未完,4507)
- 2013腾讯编程马拉松初赛第一场 (hdu4505、hdu4506、hdu4508、hdu4509)
- 腾讯第二届编程马拉松初赛第二场(hdu4505、hdu4506、hdu4508、hdu4509)
- 2013腾讯编程马拉松初赛第1场(3月21)(HDU 4505 HDU4506 HDU4507 HDU4508 HDU4509)
- 2013腾讯编程马拉松初赛第一场(3月21日) 解题报告 (HDU 4505 HDU4506 HDU4507 HDU4508 HDU4509)
- Hdu 4500 (2013年 腾讯 马拉松 初赛 第0场 第一题 )
- hdu4507恨7不成妻(数位dp) 2013腾讯编程马拉松初赛第一场
- 2013腾讯编程马拉松初赛第四场(3.24)题解
- 2013腾讯编程马拉松初赛第一场(3月21日)小明系列故事——师兄帮帮忙
- HDU 4508 湫湫系列故事——减肥记I (2013腾讯编程马拉松初赛第一场)
- 腾讯编程马拉松初赛第五场 - 第一题(威威猫系列故事——吃鸡腿)
- 2013年腾讯编程马拉松初赛第0场(3月20日)解题参考
- 2013年腾讯编程马拉松初赛第1场(3月21日)解题参考
- 2013年腾讯编程马拉松初赛第2场(3月22日)解题参考
- 2013腾讯编程马拉松初赛第0场(3月20日) HDU 4500
- 2013腾讯编程马拉松初赛第0场(3月20日)HDU 4501
- 2013腾讯编程马拉松初赛第0场(3月20日)HDU 4502
- jquery的弹出层
- 移植中国象棋到展讯6530平台(2)-----h目录中相关文件的源码
- 国内HTML5前端开发框架汇总
- 解决有的手机上面滑动背景消失变为黑色的bug
- contiki系统分析六:时钟
- 2013腾讯马拉松初赛第一场(3.21)比赛(hdu4505、hdu4506、hdu4508、hdu4509)
- 各种排序算法的稳定性和时间复杂度小结
- 排序算法-插入排序
- 用Mysql5.6出现时间问题Incorrect datetime value: '' for column 'createtime'
- Windows下安装Hadoop开发环境
- jquery—ajax的异步交互,返回json串,再弹出层显示数据
- iOS Objective-C与JavaScript的交互
- linux下tar.gz、tar、bz2、zip等解压缩、压缩命令小结
- 服务器性能测试 ab