第二题
【题目描述】
给你两个日期,问这两个日期差了多少毫秒。
【输入格式】
两行,每行一个日期,日期格式保证为“YYYY-MM-DD hh:mm:ss”这种形
式。第二个日期时间一定比第一个日期时间要大两个日期的年份一定都是 21 世
纪的年份。
【输出格式】
一行一个整数代表毫秒数。
【样例输入 1】
2000-01-01 00:00:00
2000-01-01 00:00:01
【样例输出 1】
1000
【样例输入 2】
2000-01-01 00:00:00
2000-11-11 00:00:00
【样例输出 2】
27216000000
【样例解释】
从前有座山。
【数据范围与规定】
1相同。
2可能不同。
3只有秒数、分钟数可能不同。
4日一定相同。
6月 对于80%的数据,两个日期的年份一定相同。
对于100%的数据, 两个日期一定都是 21 世纪的某一天, 且第二个日期一定
大于等于第一个日期。

  1. /*这是我做过的最恶心的模拟题,没有之一*/
  2. #include<cstdio>
  3. #include<iostream>
  4. #define N 110
  5. #define rn 31622400000LL
  6. #define pn 31536000000LL
  7. #define ll long long
  8. using namespace std;
  9. char c[N];ll n[],y[],r[],s[],f[],m[];
  10. ll r1[]={,,,,,,,,,,,,};
  11. ll r2[]={,,,,,,,,,,,,};
  12. void init(ll num)
  13. {
  14. cin>>c;
  15. n[num]=(c[]-'')*+(c[]-'')*+(c[]-'')*+c[]-'';
  16. y[num]=(c[]-'')*+c[]-'';
  17. r[num]=(c[]-'')*+c[]-'';
  18. cin>>c;
  19. s[num]=(c[]-'')*+c[]-'';
  20. f[num]=(c[]-'')*+c[]-'';
  21. m[num]=(c[]-'')*+c[]-'';
  22. }
  23. bool run(ll x)
  24. {
  25. if(x%==)
  26. {
  27. if(x%==)return true;
  28. return false;
  29. }
  30. else if(x%==)return true;
  31. return false;
  32. }
  33. ll work(ll num)
  34. {
  35. ll p=;
  36. if(run(n[num]))
  37. {
  38. for(ll i=;i<y[num];i++)p+=r1[i]*;
  39. p+=(r[num]-)*+s[num]*+f[num]*+m[num]*;
  40. }
  41. else
  42. {
  43. for(ll i=;i<y[num];i++)p+=r2[i]*;
  44. p+=(r[num]-)*+s[num]*+f[num]*+m[num]*;
  45. }
  46. return p;
  47. }
  48. int main()
  49. {
  50. //freopen("jh.txt","r",stdin);
  51. freopen("two.in","r",stdin);
  52. freopen("two.out","w",stdout);
  53. init();init();
  54. ll ans=;
  55. for(ll i=n[]+;i<n[];i++)
  56. if(run(i))ans+=rn;
  57. else ans+=pn;
  58. if(run(n[]))ans+=rn;else ans+=pn;
  59. ans-=work();
  60. ans+=work();
  61. if(n[]==n[])
  62. {
  63. if(run(n[]))ans-=rn;else ans-=pn;
  64. }
  65. cout<<ans;
  66. return ;
  67. }

死亡
【问题描述】
现在有?个位置可以打 sif,有? +1个人在排队等着打 sif。现在告诉你 个人每个人需要多长的时间打 sif,问你第? +1个人什么时候才能打 sif。 (前?
个人必须按照顺序来)
【输入格式】
第一行两个整数?,?如上所述。
接下来?行每行一个整数代表每个人所需要用的时间。
【输出格式】
一行一个整数表示答案。
【样例输入】
3 2
1
1
1
【样例输出】
1
【样例解释】
山里有座庙。
【数据规模与约定】
对于100%的数据,每个人所需用的时间不超过10 5 。
测试点 ? ? 测试点 ? ?
1 10 10 1 5000 500
2 20 10 2 100000 5000
3 50 10 3 100000 10000
4 1000 500 4 100000 20000
5 2000 500 5 100000 50000

  1. /*很简单的贪心,一直取最小就可以了*/
  2. #include<cstdio>
  3. #include<iostream>
  4. #include<queue>
  5. #define N 100010
  6. #define ll long long
  7. #define INF 1000000000000LL
  8. using namespace std;
  9. ll a[N],b[N],n,m;
  10. struct node
  11. {
  12. ll sum;
  13. bool operator < (node tmp)const
  14. {
  15. return sum>tmp.sum;
  16. }
  17. };
  18. priority_queue<node> q;
  19. int main()
  20. {
  21. //freopen("jh.txt","r",stdin);
  22. freopen("death.in","r",stdin);
  23. freopen("death.out","w",stdout);
  24. cin>>n>>m;
  25. for(ll i=;i<=n;i++)
  26. cin>>a[i];
  27. for(ll i=;i<=m;i++)
  28. {
  29. node s;s.sum=;
  30. q.push(s);
  31. }
  32. for(ll i=;i<=n;i++)
  33. {
  34. node s=q.top();q.pop();
  35. s.sum+=a[i];q.push(s);
  36. }
  37. cout<<q.top().sum;
  38. return ;
  39. }

凝视
【问题描述】
背包是个好东西,希望我也有。
给你一个二维的背包,它的体积是? × ?。现在你有一些大小为1× 2和1×
3的物品,每个物品有自己的价值。你希望往背包里面装一些物品,使得它们的
价值和最大,问最大的价值和是多少。
【输入格式】
第一行一个整数?代表该测试点的数据组数。
对于每组数据,第一行有四个整数?,?,? 1 ,? 2 ,其中? 1 ,? 2 分别代表大小为
1× 2和大小为1 × 3的物品个数。
1 × 2 接下来一行有? 2 个数代表每个1 × 3物品的价值。
【输出格式】
对于每组询问,输出能够达到的价值最大值。
【样例输入】
1
2 3 2 2
1 2
1 2
【样例输出】
4
【样例解释】
庙里有座山。
【数据规模与约定】
2,? 1 ,? 2 ≤ 100。
70%的数据,?,? ≤ 100,? 1 ,? 2 ≤ 2000。
对于100%的数据,1 ≤ ? ≤ 10,1 ≤ ?,? ≤ 500,0 ≤ ? 1 ,? 2 ≤ 10000。

  1. /*
  2. 这道题想通了就不难
  3. 有分析可以得出,当我们用若干个1*3的方格放进二维背包时,剩下的区域用1*2的
  4. 方格铺,最后至多有一个方格没铺完,所以我们可以枚举铺了几个1*3的方格,那么
  5. 用的1*2的方格数是可以O(1)地算出来的。
  6. 这里要特判一种情况,当我们铺一个2*2的背包时,尽管4>3,但是也不能铺下1*3的
  7. 方格,以此类推,当n=2,m%3=2时,铺到最后都会出现这种情况。
  8. */
  9. #include<cstdio>
  10. #include<iostream>
  11. #include<cstring>
  12. #include<algorithm>
  13. #define N 100010
  14. using namespace std;
  15. int n,m,n1,n2,a1[N],a2[N],s1[N],s2[N];
  16. int read()
  17. {
  18. int num=,flag=;char c=getchar();
  19. while(c<''||c>''){if(c=='-')flag=-;c=getchar();}
  20. while(c>=''&&c<=''){num=num*+c-'';c=getchar();}
  21. return num*flag;
  22. }
  23. bool cmp(int a,int b)
  24. {
  25. return a>b;
  26. }
  27. int main()
  28. {
  29. int T;scanf("%d",&T);
  30. while(T--)
  31. {
  32. memset(s1,,sizeof(s1));
  33. memset(s2,,sizeof(s2));
  34. scanf("%d%d%d%d",&n,&m,&n1,&n2);
  35. if(n>m)swap(n,m);
  36. for(int i=;i<=n1;i++)
  37. scanf("%d",&a1[i]);
  38. for(int i=;i<=n2;i++)
  39. scanf("%d",&a2[i]);
  40. sort(a1+,a1+n1+,cmp);
  41. sort(a2+,a2+n2+,cmp);
  42. for(int i=;i<=n1;i++)s1[i]=s1[i-]+a1[i];
  43. for(int i=;i<=n2;i++)s2[i]=s2[i-]+a2[i];
  44. int ans=;
  45. for(int i=;i<=n2;i++)
  46. {
  47. if(i*>n*m)break;
  48. int j=(n*m-i*)/;
  49. ans=max(ans,s2[i]+s1[j]);
  50. if(j>n1)ans=max(ans,s2[i]+s1[n1]);
  51. if(n==&&m%==&&j==)break;
  52. }
  53. printf("%d\n",ans);
  54. }
  55. return ;
  56. }

模拟赛1029d1的更多相关文章

  1. NOIP模拟赛20161022

    NOIP模拟赛2016-10-22 题目名 东风谷早苗 西行寺幽幽子 琪露诺 上白泽慧音 源文件 robot.cpp/c/pas spring.cpp/c/pas iceroad.cpp/c/pas ...

  2. NOI模拟赛 Day1

    [考完试不想说话系列] 他们都会做呢QAQ 我毛线也不会呢QAQ 悲伤ING 考试问题: 1.感觉不是很清醒,有点困╯﹏╰ 2.为啥总不按照计划来!!! 3.脑洞在哪里 4.把模拟赛当作真正的比赛,紧 ...

  3. NOIP第7场模拟赛题解

    NOIP模拟赛第7场题解: 题解见:http://www.cqoi.net:2012/JudgeOnline/problemset.php?page=13 题号为2221-2224. 1.car 边界 ...

  4. contesthunter暑假NOIP模拟赛第一场题解

    contesthunter暑假NOIP模拟赛#1题解: 第一题:杯具大派送 水题.枚举A,B的公约数即可. #include <algorithm> #include <cmath& ...

  5. NOIP模拟赛 by hzwer

    2015年10月04日NOIP模拟赛 by hzwer    (这是小奇=> 小奇挖矿2(mining) [题目背景] 小奇飞船的钻头开启了无限耐久+精准采集模式!这次它要将原矿运到泛光之源的矿 ...

  6. 小奇模拟赛9.13 by hzwer

    2015年9月13日NOIP模拟赛 by hzwer    (这是小奇=> 小奇挖矿(explo) [题目背景] 小奇要开采一些矿物,它驾驶着一台带有钻头(初始能力值w)的飞船,按既定路线依次飞 ...

  7. PKUSC 模拟赛 day1 下午总结

    下午到了机房之后又困又饿,还要被强行摁着看英文题,简直差评 第一题是NOIP模拟赛的原题,随便模拟就好啦 本人模拟功力太渣不小心打错了个变量,居然调了40多分钟QAQ #include<cstd ...

  8. [GRYZ]寒假模拟赛

    写在前面 这是首次广饶一中的OIERS自编自导,自出自做(zuo)的模拟赛. 鉴于水平气压比较低,机(wei)智(suo)的WMY/XYD/HYXZC就上网FQ下海找了不少水(fei)题,经过他们优( ...

  9. BZOJ2741: 【FOTILE模拟赛】L

    2741: [FOTILE模拟赛]L Time Limit: 15 Sec  Memory Limit: 162 MBSubmit: 1170  Solved: 303[Submit][Status] ...

随机推荐

  1. Linux命令行修改IP、网关、DNS、主机名 的方法

    修改主机名:[改里面的 HOSTNAME 即可] vim /etc/sysconfig/network 网卡eth0    IP修改为 102.168.0.1 ifconfig eth0 102.16 ...

  2. 淘宝(阿里百川)手机客户端开发日记第一篇 android 主框架搭建(一)

    android 主框架搭建(一) 1.开发环境:Android Studio 相继点击下一步,直接项目建立完毕(如下图) 图片看的效果如果很小,请放大您的浏览器显示百分比  转载请注明http://w ...

  3. UOJ25——IOI2014Wall

    1.题目大意:这道题也是线段树修改,有两种修改,一个区间中大于h都变成h,一个区间中小于h都变成h,单点询问 主要是这几种操作 2.分析:这道题是双标记,还是父亲的优先级比儿子低,自己用手推推就可以知 ...

  4. Distinct Subsequences Leetcode

    Given a string S and a string T, count the number of distinct subsequences of T in S. A subsequence ...

  5. [Leetcode19] Remove Nth Node From End of List

    视频讲解  http://v.youku.com/v_show/id_XMTY1MTMzNjAyNA==.html (1)定义两个指针 ListNode fast = head; ListNode s ...

  6. Sqli-LABS通关笔录-13

    输入账号:'123密码:456就报错了,报错如下所示: 跟刚才一样的.双引号换成了单引号而已. 注入为布尔型盲注,可以使用二分法注入 THE END

  7. (转)android中颜色矩阵colormatrix

    原文地址:http://www.cnblogs.com/menlsh/archive/2013/02/03/2890888.html 在Android中,对图像进行颜色方面的处理,如黑白老照片.泛黄旧 ...

  8. zend framework2 入门实例代码album模型

    下载album模型 一.目录结构说明 - zf_project - config    - autoload      global.php    -- 数据库在这里配置      local.php ...

  9. lenovo c340 centos 改键【尚无解】

    公司给陪了个一体机. 键盘很无语,fn的位置在左下角.反人类设计. 破解: 1. bios,不幸不支持. 2. 改建: http://www.bitscn.com/hardware/nb/437603 ...

  10. MySQL查询交集

    MySQL表 CREATE TABLE `viewhistory` (   `viewid` int(11) NOT NULL AUTO_INCREMENT,   `uid` int(11) NOT ...