题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2015

题目大意:给你个长度为n(n<=100)的数列,该数列定义为从2开始的递增有序偶数,让你按顺序每m个数求出一个平均值,如果最后不足m个,则以实际数量求平均值

解题思路:

记录 n = 100 的数列的 100 个 前 n(n为1 ~ 100) 项和,一个长度为 n 的 “滑动窗口”, 从头滑动到尾,过程中每次停滞都做一次除以 n 的操作并输出,注意格式,最后判断有没有剩下的了,有就输出来

PS:感觉自己代码写的好丑,思路好挫,因为既然是偶数应该有办法不去计算,直接输出某个数,或者某两个数的平均数,先上AC代码吧,其他的学会了一会来更新

(代码和题目 m, n的意思反了,代码 m 表示长度为 m 的数列,n 表示每 n 个求平均值)

代码:

  1. #include<iostream>
  2. #include<cmath>
  3. #include<iomanip>
  4. #include<algorithm>
  5. using namespace std;
  6. int num;
  7. int s[];
  8. int main()
  9. {
  10. for(int i = ; i <= ; i ++)
  11. s[i] = s[i - ] + * i;
  12. int m, n;
  13. while(cin >> m >> n)
  14. {
  15. for(int i = ; i <= m / n; i ++)
  16. {
  17. if(i == )
  18. cout << (s[n * i] - s[n * i - n]) / n;
  19. else
  20. cout << " " << (s[n * i] - s[n * i - n]) / n;
  21. }
  22.  
  23. if(m % n != )
  24. cout << " " << (s[m] - s[m / n * n]) / (m - m / n * n);
  25. cout << endl;
  26. }
  27. }
  28.  
  29. //2 4 6 8 10//更好的办法

**********更新*********

学会了方法二:http://www.cnblogs.com/ibosong/archive/2012/02/16/2353499.html

思路挺好的,不需开数组,一次遍历,途中有能整除 n 的,就输出一次,数列结束了就判断是否有剩下的数

发现规律 hdoj  P11 这前几道题就是可以优化,少去开数组,只用一个变量就可以解决的

**********第二次更新*********

超级开心,网上没找到这种方法

思路就是我发现所有输出的数字都是 n + 1,(n + 1) + n * 2,((n + 1) + n * 2)+ n * 2 ,(((n + 1) + n * 2)+ n * 2)+ n * 2....,所以用一下前 n 项和公式再搞搞就出来了啦

但感觉挺开心挺好的思路,拿到现场塞上去写好疼啊,又耗时间(思考时间),又不好搞,还是方法一正常一些吧,感觉思路好但显现效果不大

1A代码:

  1. #include<iostream>
  2. #include<cmath>
  3. #include<iomanip>
  4. #include<algorithm>
  5. using namespace std;
  6. int num;
  7. int s[];
  8. int main()
  9. {
  10. int m, n;
  11. while(cin >> m >> n)
  12. {
  13. for(int i = ; i <= m / n; i ++)
  14. {
  15. if(i == )
  16. cout << n + ;
  17. else
  18. cout << " " << n + + * n * (i - );
  19. }
  20. if(m % n != )
  21. cout << " " << (m + m * m - (m / n * n + pow(m / n * n, ))) / (m - m / n * n);
  22.  
  23. cout << endl;
  24. }
  25. }

附上自己的CSDN:https://blog.csdn.net/zxc13936130136

唉,静下心来想想,我都大三了,打算考研,却都没脸说自己打过acm,一无是处穷途末路,什么都没有...

还想考去bupt,前阵子在被知乎大佬们教会了认清现实 https://www.zhihu.com/question/268311128/answers/created ,还有每天看到acm群他们的日常生活啊,讨论的东西啊,这就是我渴望到窒息都想要的生活啊,可是感觉自己差的好远好远菜的没话说,还有考研,保研群里真觉得自己好菜好菜啊,给他们提鞋的提鞋都不配,每天看不到希望的灯塔,感觉离梦想渐行渐远......

可是,这条路只有自己才能克服,别人不能代劳。努力吧,欲得早成,戒心自律!

因果,代价,弥补。

自强不息!

HDU 2015 (水)的更多相关文章

  1. HDU-1042-N!(Java大法好 &amp;&amp; HDU大数水题)

    N! Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others) Total Subm ...

  2. hdu 4464 水

    http://acm.hdu.edu.cn/showproblem.php?pid=4464 现场赛总会有水题,这就是最水的一道,预计也就是能当高校的上机题,保研用,呵呵~~~ #include &l ...

  3. HDU 2015 偶数求和

    http://acm.hdu.edu.cn/showproblem.php?pid=2015 Problem Description 有一个长度为n(n<=100)的数列,该数列定义为从2开始的 ...

  4. HDU 5391 水题。

    E - 5 Time Limit:1500MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I64u Submit Statu ...

  5. hdu 1544 水题

    水题 /* * Author : ben */ #include <cstdio> #include <cstdlib> #include <cstring> #i ...

  6. hdu 3357 水题

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3357 #include <cstdio> #include <cmath> # ...

  7. hdu 5007 水 弦

    http://acm.hdu.edu.cn/showproblem.php?pid=5007 纯粹的联系String的substr 什么时候substr拦截比写短话 string te; int n; ...

  8. Tickets HDU - 1260 水DP

    HDU - 1260 现在有n个人要买电影票,如果知道每个人单独买票花费的时间, 还有和前一个人一起买花费的时间,问最少花多长时间可以全部买完票. 直接dp就行,注意下输出和初始化 每次从dp[i-1 ...

  9. HDU排序水题

    1040水题; These days, I am thinking about a question, how can I get a problem as easy as A+B? It is fa ...

随机推荐

  1. 3. css百度制作字体图片

    http://fontstore.baidu.com/static/editor/index.html?qq-pf-to=pcqq.group

  2. Linux提权-suid提权

    0x1 suid概念 通俗理解为其他用户执行这个程序是可以用该程序所有者/组的权限 0x2 suid提权 简单理解为,一个文件有s标志(权限中包含s),并且对应的是root权限,那么当运行这个程序时就 ...

  3. [linux] 权限问题

    权限问题一直蒙蒙的,下面就是总结一下!(原文链接:http://www.cnblogs.com/chengJAVA/p/4319420.html) 指令名称:chmod 使用权限 : 所有使用者 使用 ...

  4. redis: 持久化(十二)

    RDB配置 RDB 是 Redis 默认的持久化方案.在指定的时间间隔内,执行指定次数的写操作,则会将内存中的数据写入到磁盘中.即在指定目录下生成一个dump.rdb文件.Redis 重启会通过加载d ...

  5. ubuntu16.04-交叉编译opencv3.4.6

    0.前言 在要移植opecv和SeetaFaceEngine-master到ARM板子上运行的所有步骤之前,有几点需要注意的: 查看板子运行的Kernel版本 交叉编译工具链的gcc版本,关键就是工具 ...

  6. ThinkPHP框架初步掌握

    为了帮老师用ThinkSNS二次开发一个微博系统,专门花了几天学习ThinkPHP框架,现在将一些ThinkPHP入门知识作以记录. 首先声明: 本文不是完全教程,只是将开发中碰到的问题作以总结,如果 ...

  7. mysql 复制表结构和数据

    CREATE TABLE 新表名 SELECT 字段 as 新字段,字段 as 新字段.....from 旧表名:

  8. Inno Setup: Ask for reboot after uninstall

     https://stackoverflow.com/questions/36497580/inno-setup-ask-for-reboot-after-uninstall   Use Uninst ...

  9. Copy ArrayList的四种方式

    目录 简介 使用构造函数 使用addAll方法 使用Collections.copy 使用stream 总结 Copy ArrayList的四种方式 简介 ArrayList是我们经常会用到的集合类, ...

  10. spring boot 集成mybatis使用logback打印并保存日志信息

    spring boot 打印执行的sql语句 最近在学习spring boot 整合了Mybatis和druid之后总感觉少点什么东西,看了下在别的项目上用的框架,发现自己整合的东西不打印sql语句, ...