九度题集
mysudo
热爱互联网,喜欢思考
展开
-
1483求最大最小数
/* * 初始化min,max为0和1中的较小和较大者,每次两个向前走,大者与max比较并取较大的, 小者与min比较并取较小的,直到最后,总比较次数为1.5N */ #include int main(){ int buf[10000]; int n; while(scanf("%d",&n)!=EOF){ int i; for(i=0;i scanf("%d",&bu原创 2014-03-02 16:35:40 · 662 阅读 · 0 评论 -
1371最小的K个数
/* * 首先初始化一个最大堆为数组开始的K的数,然后遍历数组剩余的元素,如果新元素比堆里的最大数小, 则将此元素放进堆,原堆的最大数排除,如此下去直到数组的最后一个元素,然后将堆倒序输出即可 */ #include #include using namespace std; priority_queue minK; //最大堆 int buf[200001]; in原创 2014-03-03 09:34:08 · 608 阅读 · 0 评论 -
1387斐波那契数列
/* *1 在计算的过程中,也只是将数组的前两个数相加,而不是利用递推 */ #include int main(){ long long buf[75]; buf[0]=0; buf[1]=1; int i; for(i=2;i buf[i]=buf[i-1]+buf[i-2]; } int n; while(scanf("%d",&n)!=EOF){ prin原创 2014-03-02 15:56:55 · 594 阅读 · 0 评论 -
剑指offer变形1389
/* *方法:Fibonacci变形,F(n)是前边所有元素的和 即 F(n)=F(1)+F(2)+....+F(n-1) */ #include int main(){ long long a,b; int n,i=1; while(scanf("%d",&n)!=EOF){ a=0; b=1; for(i=1;i a+=b; b=a+1;原创 2014-03-20 14:55:13 · 706 阅读 · 0 评论 -
九度1089Java版和C版比较
package zzz.java; import java.util.Scanner; public class ScannerClass { public static int reverse(int n){ //对n反转 int rn = 0; //反转后的数字 while(n!=0){原创 2014-06-30 20:41:51 · 536 阅读 · 0 评论