POJ1004 1003 1002 1005 1006 1007 1001刷题
2016-02-13 17:24
435 查看
大二的时候接触过一段时间ACM 而C和C++也好久没用了 基本语句都有些生疏更别提算法了
使用的是 thestoryofsnow的专栏 上的刷题顺序 一开始会十分初级 代码甚至分析在网上都是一艘一大片 而写出来的目的是为了总结刷题过程学到的东西 方便以后回顾 以及记录自己进步的脚步
1004 主要复习了C语言的输入输出语句
1003 nothing to say
1002 interesting
这道题乍一看很简单 就是一个字符转换的问题 但是提交后会超时 因此需要寻找更简便的算法
其中一个简便算法的思路就是使用数组的下标来表示转换后的电话号码 用数组的值表示该号码的出现次数 代码可以写得很简单
1005 就一个数学公式
1006 interesting
使用计算机程序的暴力循环可以解决 但是会超时 简便方法就是用所谓的剩余定理 问题原型为
一个数被3除余1,被4除余2,被5除余4,这个数最小是几?题中3、4、5三个数两两互质。则〔4,5〕=20;〔3,5〕=15;〔3,4〕=12;〔3,4,5〕=60。为了使20被3除余1,用20×2=40;使15被4除余1,用15×3=45;使12被5除余1,用12×3=36。然后,40×1+45×2+36×4=274,因为,274>60,所以,274-60×4=34,就是所求的数
其实就是余数定理的灵活应用
1007 输入输出形式跟1002相似
没什么技术含量 就是遍历就可以 但是当时写的时候在细节上浪费了一些时间 需要注意编程规范
1001 大数相乘的题 用数组相乘表示 自己计算进位和小数点的位置 这个代码是从网上粘的 以后碰到类似题目 直接粘就行
使用的是 thestoryofsnow的专栏 上的刷题顺序 一开始会十分初级 代码甚至分析在网上都是一艘一大片 而写出来的目的是为了总结刷题过程学到的东西 方便以后回顾 以及记录自己进步的脚步
1004 主要复习了C语言的输入输出语句
1003 nothing to say
1002 interesting
这道题乍一看很简单 就是一个字符转换的问题 但是提交后会超时 因此需要寻找更简便的算法
其中一个简便算法的思路就是使用数组的下标来表示转换后的电话号码 用数组的值表示该号码的出现次数 代码可以写得很简单
1005 就一个数学公式
1006 interesting
使用计算机程序的暴力循环可以解决 但是会超时 简便方法就是用所谓的剩余定理 问题原型为
一个数被3除余1,被4除余2,被5除余4,这个数最小是几?题中3、4、5三个数两两互质。则〔4,5〕=20;〔3,5〕=15;〔3,4〕=12;〔3,4,5〕=60。为了使20被3除余1,用20×2=40;使15被4除余1,用15×3=45;使12被5除余1,用12×3=36。然后,40×1+45×2+36×4=274,因为,274>60,所以,274-60×4=34,就是所求的数
其实就是余数定理的灵活应用
1007 输入输出形式跟1002相似
没什么技术含量 就是遍历就可以 但是当时写的时候在细节上浪费了一些时间 需要注意编程规范
1001 大数相乘的题 用数组相乘表示 自己计算进位和小数点的位置 这个代码是从网上粘的 以后碰到类似题目 直接粘就行
相关文章推荐
- 越狱Season 1- Episode 16
- 14. Longest Common Prefix
- 匈牙利算法
- 越狱Season 1-Episode 15: By the Skin and the Teeth
- iOS中单例的线程安全
- Machine Learning - Linear Regression with One Variable
- Python教程学习简记10--Python 匿名函数
- JVM栈溢出
- 第一篇CSDN博客
- CSS的层叠和继承
- 越狱Season 1-Episode 14: The Rat
- BZOJ 4337: BJOI2015 树的同构|Hash
- Android Studio酷炫插件(一)——自动化快速实现Parcelable接口序列化
- leetcode70题 题解 翻译 C语言版 Python版
- 刷题、OJ 1908 蟠桃记
- [python] list.append()和list.extend()的区别
- 在 Mac 上安装 sbt
- 越狱Season 1-Episode 13: End of the Tunnel
- Sublime Text 的配置与使用(未完)
- iOS中 支付宝钱包详解