关闭

算法日记(Java实现)第20160717(3)期——POJ1005/POJ1006

标签: javapoj源代码算法
299人阅读 评论(0) 收藏 举报
分类:
今日题目:POJ1005、POJ1006
(一)POJ1005
题目地址:http://poj.org/problem?id=1005
No Problem!

源代码如下:

import java.util.Scanner;

//POJ 1005

/*Date: 2016.07.17
* 1st:	Accepted
*/


public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		for(int i = 1; i <= n; i++){
			double x = sc.nextDouble();
			double y = sc.nextDouble();
			double l = Math.sqrt(x * x + y * y);
			int j = 1;
			while(Math.sqrt(2 * 50 * j / Math.PI) < l){
				j++;
			}
			System.out.println("Property " + i + ": This property will begin eroding in year " + j +".");
		}
		System.out.println("END OF OUTPUT.");
	}
}

(二)POJ1006

题目地址:http://poj.org/problem?id=1006

1.一开始算法错误,如此写:

int s = 1;
while(true){
	if((p + s) % 23 == 0 && (e + s) % 28 == 0 && (i + s) % 33 == 0){
		System.out.println("Case " + c + ": the next triple peak occurs in " + (s - d) + " days.");
		break;
		}
	s++;
}
潜移默化中“以0,0,0为起点,每个循环各经历了p, e, i天”,当然错误。

2.恐怕逐日累加会超时,结果并未超时。可有改进算法,未超时故未用。

源代码如下:

import java.util.Scanner;

//POJ 1006

/*Date: 2016.07.17
* 1st:	Accepted
*/

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int c = 0;
		while(true){
			c++;
			int p, e, i, s;
			p = sc.nextInt();
			e = sc.nextInt();
			i = sc.nextInt();
			d = sc.nextInt();
			if(p < 0){
				break;
			}
			int s = d + 1;
			s++;
			while(true){
				if((s - p) % 23 == 0 && (s - e) % 28 == 0 && (s - i) % 33 == 0){
					System.out.println("Case " + c + ": the next triple peak occurs in " + (s - d) + " days.");
					break;
				}
				s++;
			}
		}
	}
}
3.发现网上大牛之解答,使用“中国剩余定理”。可以有效减少时间复杂度,参见:http://www.cnblogs.com/walker01/archive/2010/01/23/1654880.html
0
0
查看评论

量化分析师的Python日记【第3天:一大波金融Library来袭之numpy篇】

接下来要给大家介绍的系列中包含了Python在量化金融中运用最广泛的几个Library: numpy scipy pandas matplotlib 会给初学者一一介绍 ###NumPy 简介 ####一、NumPy是什么? 量...
  • youmengdaigu
  • youmengdaigu
  • 2015-11-05 22:18
  • 1728

poj1006 Biorhythms 边界,坑题

Biorhythms Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 125633   Accepted: 39673 ...
  • EventQueue
  • EventQueue
  • 2016-03-17 21:14
  • 1778

书评:《算法:C语言实现(第1~4部份) 基础知识、数据结构、排序及搜索(原书第3版))

本书细腻讲解计算机算法的c语言实现。全书分为四部分,共16章。包括基本算法分析原理,基本数据结构、抽象数据结构、递归和树等数据结构知识,选择排序、插入排序、冒泡排序、希尔排序、快速排序方法、归并和归并排序方法、优先队列与堆排序方法、基数排序方法以及特殊用途的排序方法,并比较了各种排序方法的性能特征,...
  • chengxuyuyan
  • chengxuyuyan
  • 2011-03-28 16:30
  • 899

poj1005的java实现

问题描述: Fred Mapper 正在考虑在路易斯安那州购买一些土地来建他自己的房子。在研究土地的过程中,他发现,路易斯安那州的土地每年都会被密西西比河侵蚀掉 50 平方里。因为 Fred 希望在这个房子里度过余生,所以他需要知道他的那些土地是否会被侵蚀掉。 在做了更多的调查之后,Fr...
  • caihongshijie6
  • caihongshijie6
  • 2013-04-16 20:23
  • 1172

POJ1003 POJ1004 POJ1005 POJ1006 POJ1007

1003 Hangover, 求可以挂几张卡片 没什么意思,求出来就完了,如果想缩短时间,这道题的量不大,其实可以预计算一些出来,做成一个表,先查表,减小区间,再算,这样肯定快一点。。。。懒得实现了。。   #include using na...
  • viva_bupt
  • viva_bupt
  • 2013-03-28 21:08
  • 431

算法日记(Java实现)第20170308(7)期——POJ1222

POJ1222 EXTENDED LIGHTS OUT 题目地址:http://poj.org/problem?id=1222 最近写了许多的算法题,里面也有一些很有意思的题,但没有更新博客,今天起打算更新前一阶段学习算法的成果。 和以往不同的是,以后的代码思路都体现在详尽的注释里。 ...
  • cao610374598
  • cao610374598
  • 2017-03-24 12:34
  • 211

算法日记(Java实现)第20160718(4)期——POJ1007

POJ1007 题目地址:http://poj.org/problem?id=1007 本题思路较为清晰,即进行字符串中字符的比较操作。为了代码方(tou)便(lan)起见,使用了新的数据类型,并且实现了comparable接口,于是可调用Arrays中的排序方法,不用自己写排序代码。 源...
  • cao610374598
  • cao610374598
  • 2016-07-18 21:23
  • 334

算法日记(Java实现)第20160715(1)期——POJ1001/POJ1002

今日题目:POJ1001、POJ1002 (一)POJ1001 题目地址:http://poj.org/problem?id=1001 1.首先考虑内置类型是否能用,显然不能用。发现内置double类型最多能保证小数点后15位精度,第16位将会有问题。 2.上网查找到与BigInteger类型...
  • cao610374598
  • cao610374598
  • 2016-07-15 15:28
  • 585

算法日记(Java实现)第20160719(5)期——POJ1008

POJ1008 题目地址:http://poj.org/problem?id=1008 本题虽然思路很简单。却连续提交了七次,花费了大量时间检查错误才通过。主要是没有足够重视题目中的细节。 源代码如下: import java.util.Scanner; //POJ 1008 /...
  • cao610374598
  • cao610374598
  • 2016-07-20 03:19
  • 216

算法日记(Java实现)第20160716(2)期——POJ1003/POJ1004

今日题目:POJ1001、POJ1002 (一)POJ1003 题目地址:http://poj.org/problem?id=1003 No Problem. 源代码如下: import java.util.Scanner; //POJ 1003 /*Date:...
  • cao610374598
  • cao610374598
  • 2016-07-16 19:28
  • 371
    个人资料
    • 访问:8830次
    • 积分:131
    • 等级:
    • 排名:千里之外
    • 原创:8篇
    • 转载:1篇
    • 译文:0篇
    • 评论:1条