本来打完就想写的,,奈何舍友要睡了,我开个台灯感觉怪怪的,就没写。

A题竟然一开始wa了。。。后来发现对于c和a还有c和b的关系没有判断,,丢掉了很多罚时。

B题我的方法是    计算 sum,然后 分别统计 2、3、4的个数,一个一个试,具体看代码(前面快速io有点长见谅

  1. package R491;
  2.  
  3. import java.io.BufferedReader;
  4. import java.io.InputStreamReader;
  5. import java.io.OutputStreamWriter;
  6. import java.io.PrintWriter;
  7. import java.util.StringTokenizer;
  8.  
  9. public class Main2 {
  10. static BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
  11. static StringTokenizer tok;
  12. static boolean hasNext()
  13. {
  14. while(tok==null||!tok.hasMoreTokens())
  15. try{
  16. tok=new StringTokenizer(in.readLine());
  17. }
  18. catch(Exception e){
  19. return false;
  20. }
  21. return true;
  22. }
  23. static String next()
  24. {
  25. hasNext();
  26. return tok.nextToken();
  27. }
  28. static long nextLong()
  29. {
  30. return Long.parseLong(next());
  31. }
  32. static int nextInt()
  33. {
  34. return Integer.parseInt(next());
  35. }
  36. static PrintWriter out=new PrintWriter(new OutputStreamWriter(System.out));
  37.  
  38. public static void main(String[] args) {
  39. int n = nextInt();
  40. int a[] = new int[n];
  41. int b[] = new int[8];
  42. int sum = 0;
  43. for(int i=0;i<n;i++){
  44. a[i] = nextInt();
  45. b[a[i]]++;
  46. sum+=a[i];
  47. }
  48. int num = 0;
  49. while (sum<4.5*n){
  50. if (b[2]>0){
  51. sum+=3;
  52. b[2]--;
  53. num++;
  54. }else if (b[3]>0){
  55. sum+=2;
  56. b[3]--;
  57. num++;
  58. }else if (b[4]>0){
  59. sum+=1;
  60. b[4]--;
  61. num++;
  62. }
  63. }
  64. out.print(num);
  65. out.flush();
  66. }
  67. }

  

C 一开始还以为可能有点意思,然后二分板子就出来了,没啥可说的,中间竟然wa了一发,,很玄学,   ,判断时 如果 把  num1>=num2  写成 num1>=(double)n/2 就会wa。。。

  1. package R491;
  2.  
  3. import java.io.BufferedReader;
  4. import java.io.InputStreamReader;
  5. import java.io.OutputStreamWriter;
  6. import java.io.PrintWriter;
  7. import java.util.StringTokenizer;
  8.  
  9. public class Main3 {
  10. static BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
  11. static StringTokenizer tok;
  12. static boolean hasNext()
  13. {
  14. while(tok==null||!tok.hasMoreTokens())
  15. try{
  16. tok=new StringTokenizer(in.readLine());
  17. }
  18. catch(Exception e){
  19. return false;
  20. }
  21. return true;
  22. }
  23. static String next()
  24. {
  25. hasNext();
  26. return tok.nextToken();
  27. }
  28. static long nextLong()
  29. {
  30. return Long.parseLong(next());
  31. }
  32. static int nextInt()
  33. {
  34. return Integer.parseInt(next());
  35. }
  36. static PrintWriter out=new PrintWriter(new OutputStreamWriter(System.out));
  37.  
  38. static long n;
  39. public static void main(String[] args) {
  40. n = nextLong();
  41. long l = 1;
  42. long r = n;
  43. while (l<=r){
  44. long mid=(l+r)/2;
  45. if (caneat(mid)){
  46. r=mid-1;
  47. }else {
  48. l=mid+1;
  49. }
  50. }
  51. out.print(l);
  52. out.flush();
  53. }
  54. public static boolean caneat(long k){
  55. long num=0;
  56. long num2 = 0;
  57. long temp = n;
  58. while (temp>0){
  59. if (temp<k){
  60. num+=temp;
  61. break;
  62. }
  63. num+=k;
  64. temp-=k;
  65. num2+=(temp/10);
  66. temp-=temp/10;
  67. }
  68. if (num>=num2){
  69. return true;
  70. }else {
  71. return false;
  72. }
  73. }
  74. }

  

D题就很和蔼可亲了,竟然只有两行,直接暴力,我的方法是  umm懒得说看代码吧

  1. package R491;
  2.  
  3. import java.io.BufferedReader;
  4. import java.io.InputStreamReader;
  5. import java.io.OutputStreamWriter;
  6. import java.io.PrintWriter;
  7. import java.util.StringTokenizer;
  8.  
  9. public class Main4 {
  10. static BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
  11. static StringTokenizer tok;
  12. static boolean hasNext()
  13. {
  14. while(tok==null||!tok.hasMoreTokens())
  15. try{
  16. tok=new StringTokenizer(in.readLine());
  17. }
  18. catch(Exception e){
  19. return false;
  20. }
  21. return true;
  22. }
  23. static String next()
  24. {
  25. hasNext();
  26. return tok.nextToken();
  27. }
  28. static long nextLong()
  29. {
  30. return Long.parseLong(next());
  31. }
  32. static int nextInt()
  33. {
  34. return Integer.parseInt(next());
  35. }
  36. static PrintWriter out=new PrintWriter(new OutputStreamWriter(System.out));
  37.  
  38. public static void main(String[] args) {
  39. String s[] = new String[2];
  40. for(int i=0;i<2;i++){
  41. s[i] = next();
  42. }
  43. if (s[0].length()==1){
  44. out.print(0);
  45. out.flush();
  46. return;
  47. }
  48. char ch1[] = s[0].toCharArray();
  49. char ch2[] = s[1].toCharArray();
  50. int ans = 0;
  51. for(int i=0;i<ch1.length;i++){
  52. if (ch1[i]=='0'&&ch2[i]=='0'){
  53. if (i==0){
  54. if (ch1[i+1]=='0'){
  55. ans++;
  56. ch1[i+1]='X';
  57. ch1[i]=ch2[i]='X';
  58. }else if (ch2[i+1]=='0'){
  59. ans++;
  60. ch2[i+1]='X';
  61. ch1[i]=ch2[i]='X';
  62. }
  63. }else if (i<ch1.length-1){
  64. if (ch1[i-1]=='0'){
  65. ans++;
  66. ch1[i-1]='X';
  67. ch1[i]=ch2[i]='X';
  68. }else if (ch2[i-1]=='0'){
  69. ans++;
  70. ch2[i-1]='X';
  71. ch1[i]=ch2[i]='X';
  72. }else if (ch1[i+1]=='0'){
  73. ans++;
  74. ch1[i+1]='X';
  75. ch1[i]=ch2[i]='X';
  76. }else if (ch2[i+1]=='0'){
  77. ans++;
  78. ch2[i+1]='X';
  79. ch1[i]=ch2[i]='X';
  80. }
  81. }else if (i== ch1.length-1) {
  82. if (ch1[i - 1] == '0') {
  83. ans++;
  84. ch1[i - 1] = 'X';
  85. ch1[i] = ch2[i] = 'X';
  86. } else if (ch2[i - 1] == '0') {
  87. ans++;
  88. ch2[i - 1] = 'X';
  89. ch1[i] = ch2[i] = 'X';
  90. }
  91. }
  92. }
  93. }
  94. out.print(ans);
  95. out.flush();
  96. }
  97. }

  E 啊哈哈哈哈,尴尬而不失礼貌的微笑,因为我太弱了又很垃圾还是一个数学白痴所以我没写出来。。。

  F学长都没写。。。学长51分钟过掉ABCDE好像就开始挂机了,发现F有点难就睡觉去了,然后D题掉了,囍。

  近期:补一下排列组合,抓紧学个tarjan把前天的E题补掉。(对不起是我太弱了不会tarjan

  rating:1548

  忽然发现今晚还有一场,我可能要1600+了欸嘿嘿嘿。

codeforce R 491 (div2)的更多相关文章

  1. Codeforce Round #216 Div2

    e,还是写一下这次的codeforce吧...庆祝这个月的开始,看自己有能,b到什么样! cf的第二题,脑抽的交了错两次后过了pretest然后system的挂了..脑子里还有自己要挂的感觉,果然回头 ...

  2. Codeforce Round #211 Div2

    真的是b到不行啊! 尼玛C题一个这么简单的题目没出 aabbccddee 正确的是aabccdee 我的是   aabcdee 硬是TM的不够用,想半天还以为自己的是对的... A:题... B:题. ...

  3. CodeForce Educational round Div2 C - Vasya and Robot

    http://codeforces.com/contest/1073/problem/C   题意:给你长度为n的字符串,每个字符为L, R, U, D.给你终点位置(x, y).你每次出发的起点为( ...

  4. codeforces R 493 div2

    我蓝了!蓝了!!!蒟蒻的蓝色.日常点开friend发现竟然没几个人打??然后去div1看了一下果然学长全都去打div1了呜呜呜. 看到了久违的黄大仙,以为他今晚要上grandmaster,结果打完发现 ...

  5. EC R 87 div2 D. Multiset 线段树 树状数组 二分

    LINK:Multiset 主要点一下 二分和树状数组找第k大的做法. 线段树的做法是平凡的 开一个数组实现就能卡过. 考虑如树状数组何找第k大 二分+查询来判定是不优秀的. 考虑树状数组上倍增来做. ...

  6. CF R 639 div2 F Review 贪心 二分

    LINK:Résumé Review 这道题让我眼前一亮没想到二分这么绝. 由于每个\(b_i\)都是局部的 全局只有一个限制\(\sum_{i=1}^nb_i=k\) 所以dp没有什么用 我们只需要 ...

  7. CF R 635 div2 1337D Xenia and Colorful Gems 贪心 二分 双指针

    LINK:Xenia and Colorful Gems 考试的时候没想到一个很好的做法. 赛后也有一个想法. 可以考虑答案的样子 x,y,z 可以发现 一共有 x<=y<=z,z< ...

  8. E CF R 85 div2 1334E. Divisor Paths

    LINK:Divisor Paths 考试的时候已经想到结论了 可是质因数分解想法错了 导致自闭. 一张图 一共有D个节点 每个节点x会向y连边 当且仅当y|x,x/y是一个质数. 设f(d)表示d的 ...

  9. CF R 632 div2 1333F Kate and imperfection

    赛后看了半天题 才把题目看懂 英语水平极差. 意思:定义一个集合S的权值为max{gcd(a,b)};且\(a\neq b\) 这个集合可以从1~n中选出一些数字 求出当集合大小为k时的最小价值. 无 ...

随机推荐

  1. linux > 和 >> 、< 区别

    linux中经常会用到将内容输出到某文件当中,只需要在执行命令后面加上>或者>>号即可进入操作. 大于号:将一条命令执行结果(标准输出,或者错误输出,本来都要打印到屏幕上面的)重定向 ...

  2. iOS:如何实现在文字上添加拼音

    一.介绍 最近项目有一个需求,需要给朗诵的文字添加对应的拼音,而且要求使用原生的控件实现.一开始听到这个需求挺懵逼的,感觉有点难.后来,静下来想一下,其实还是可以实现的,无非就是自定义了.下面,就来说 ...

  3. IndexDB 操作util

    https://dexie.org/ https://www.tangshuang.net/5668.html https://github.com/tangshuang/hello-indexedd ...

  4. redis批量删除key 远程批量删除key

    一.遇到的问题 在开发的过程中,经常会遇到要批量删除某种规则的key,如缓存的课程数据“course-课程uid”,其中课程uid是变量,我们需要删除"course-*"这一类的数 ...

  5. 卷积神经网络(CNN)代码实现(MNIST)解析

    在http://blog.csdn.net/fengbingchun/article/details/50814710中给出了CNN的简单实现,这里对每一步的实现作个说明: 共7层:依次为输入层.C1 ...

  6. git合并指定文件到另一分支

    经常被问到如何从一个分支合并特定的文件到另一个分支.其实,只合并你需要的那些commits,不需要的commits就不合并进去了. 合并某个分支上的单个commit 首先,用git log或sourc ...

  7. PHP会员找回密码功能实现实例介绍

    设置思路 1.用户注册时需要提供一个E-MAIL邮箱,目的就是用该邮箱找回密码. 2.当用户忘记密码或用户名时,点击登录页面的“找回密码”超链接,打开表单,并输入注册用的E-MAIL邮箱,提交. 3. ...

  8. Windows系统下安装zabbix客户端

    简单介绍如何在windows系统下安装zabbix客户端 1. 首先下载和zabbix服务端大版本相同的windows客户端    例如我服务端安装的是zabbix-3.4.14.tar.gz     ...

  9. .NET Core+NLog+存储配置 日志存入到数据库

    nlog-config.xml 配置文件: <?xml version="1.0" encoding="utf-8" ?> <nlog xml ...

  10. csv.writer写入文件有多余的空行

    在用csv.writer写入文件的时候发现中间有多余的空行. 最早打开方式只是‘w’,会出现多余的空行,网上建议使用binary形式‘wb’打开可以解决问题: with open('egg2.csv' ...