华为机试—竞赛 西安2016届校园招聘练习(A卷)
2015-06-29 22:41
274 查看
一、整数分隔
使用递归的话肯定会溢出,只能用迭代
import java.util.Scanner; public class Main { // public static long foo(int n) // { // if(n==1) // return 1; // else // { // if(n%2==0) // return foo(n-1)+foo(n/2); // else // return foo(n-1); // } // } public static void main(String[] args) { Scanner s = new Scanner(System.in); while (s.hasNextInt()) { int n = s.nextInt(); int[] f = new int[1000001]; f[1] = 1; for (int i = 2; i <= n; i++) { if (i % 2 == 0) f[i] = (f[i - 1] + f[i / 2]) % 1000000000; else f[i] = f[i - 1]; } System.out.println(f ); } } }
二、大数求和
位操作法/article/1367981.html
Java的BigDecimal类/article/1367980.html
三、整数排序
#include <iostream> #include <cstring> #include <vector> #include <algorithm> using namespace std; int main() { string str; cin >> str; vector< int > ivec; int len = str.size(); int bi=0,ei=0,num=0,dim=1; for(int i=0; i < len; i++) { if(str[i] == ',' || i == len-1) { ei = i; if(i == len-1) ei=len; while(ei > bi) { num += (str[--ei]- '0')*dim; dim *= 10; } ivec.push_back(num); num=0; dim=1; bi=i+1; } } sort(ivec.begin(),ivec.end()); int min_num = 0, max_num = 0; int len1 = ivec.size(); for(int i=0; i < len1; i++) { min_num =max_num = ivec[i]; cout << min_num << " "; while( ivec[i+1] - 1 == ivec[i]) { max_num = ivec[i+1]; i++; } if( max_num != min_num) cout << max_num << " "; } ivec.clear(); return 0; }
import java.util.Arrays; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner s = new Scanner(System.in); while (s.hasNext()) { String str = s.nextLine(); String[] num = str.split(","); int[] a = new int[num.length]; for (int i = 0; i < num.length; i++) { a[i] = Integer.valueOf(num[i]); } Arrays.sort(a); int min_num = 0, max_num = 0; for (int i = 0; i < a.length; i++) { min_num = max_num = a[i]; System.out.print(min_num + " "); if (i == a.length - 1) break; while (a[i + 1] - 1 == a[i]) { max_num = a[i + 1]; i++; if (i == a.length - 1) break; } if (max_num != min_num) System.out.print(max_num + " "); } } } }
相关文章推荐
- Spring:aspectj
- Bad Code!Why?
- iproute2和tc的高级路由用法
- Summary Ranges —— LeetCode
- 用伪类清除浮动
- GCC几个选项学习
- 事务—EJB事务(CMT)
- 标准输入流输出流以及错误流
- 2015第27周一非结构化数据
- so库与系统硬件架构不符合异常
- 欧拉路径 提高篇 hiho第51周
- iproute2常用命令
- WPF——菜单栏及TabControl
- 通过浏览器直接打开iOS/Android App 应用程序 - Cundong's log - 开源中国社区
- 聚类算法总结
- Java解惑之找零时刻
- HttpClient的释放问题
- VS中语言属性对字符集转码的影响
- awk1line
- RPG游戏黑暗之光