`
jythoner
  • 浏览: 610049 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

用Java解PythonChallenge(第二天)

阅读更多
3.
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class ChallengeThree {
	// http://www.pythonchallenge.com/pc/def/equality.html
	public static void main(String[] args) {
		try {
			BufferedReader br = new BufferedReader(new FileReader("c:\\4.txt"));
			Pattern pattern = Pattern
					.compile("[^A-Z]+[A-Z]{3}([a-z])[A-Z]{3}[^A-Z]+");
			Matcher matcher;
			String temp = null;

			while ((temp = br.readLine()) != null) {
				matcher = pattern.matcher(temp);
				while (matcher.find()) {
					System.out.print(matcher.group(1));
				}
			}
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}


注:与上一题类似,网页的源码中有用注释写的一段乱码,让我们找出两侧被3个(且只为3个)大写字母包围的小写字母

4.
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.URL;

public class ChallengeFour {
	// http://www.pythonchallenge.com/pc/def/linkedlist.html
	public static void main(String[] args) {
		ChallengeFour cf = new ChallengeFour();
		try {
			String currentNum = "12345";
			while (currentNum.matches("[0-9]{1,}")) {
				System.out.println(currentNum);
				if (currentNum.equals("92118")) {
					currentNum = cf.getNextNum(String.valueOf(Integer
							.parseInt(currentNum) / 2));
				} else {
					currentNum = cf.getNextNum(currentNum);
				}
			}
			System.out.println("The last result is " + currentNum);
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

	public String getNextNum(String currentNum) throws IOException {
		URL url = new URL(
				"http://www.pythonchallenge.com/pc/def/linkedlist.php?nothing="
						+ currentNum);
		BufferedReader br = new BufferedReader(new InputStreamReader(
				new BufferedInputStream(url.openStream())));
		String temp = null;
		String[] strings = null;
		while ((temp = br.readLine()) != null) {
			strings = temp.split(" ");
		}
		br.close();
		return strings[strings.length - 1];

	}
}

注:点击图片,调用linkedlist.php?nothing=12345得到了and the next nothing is 92512 从中得到规律,根据每次获得的nothing值来进行下次url访问。


4.
这道题需要用到python专有的一个核心模块,java无解,直接google答案,进入下一题
1
0
分享到:
评论

相关推荐

    java2python--java代码转python工具

    Java到Python的转换工具,如标题“java2python”所示,是编程领域中的一种实用技术,旨在帮助开发者将已有的Java代码转换为Python语言。这种转换对于那些熟悉Java但希望进入Python生态系统,或者想要利用Python特定...

    分别使用Java和Python实现希尔排序算法

    希尔排序:分别使用Java和Python实现希尔排序算法 希尔排序:分别使用Java和Python实现希尔排序算法 希尔排序:分别使用Java和Python实现希尔排序算法 希尔排序:分别使用Java和Python实现希尔排序算法 希尔排序:...

    GRPC简单应用(Java+Python)

    二、Java实现GRPC 1. 安装和配置:首先,你需要在Java项目中添加GRPC和protobuf的依赖。在Maven或Gradle的build文件中,加入相应的依赖项。 2. 定义.proto文件:创建一个名为`helloworld.proto`的文件,定义一个...

    用java调用python

    它允许 Python 程序直接使用 Java 类库,反之亦然。JPype 是一种轻量级的解决方案,适用于需要在 Python 和 Java 之间共享数据和对象的场景。 无论选择哪种方式,都要注意以下几点: - 错误处理:确保捕获并处理...

    java2python, 将Java源代码转换为 python的简单但有效的库.zip

    java2python, 将Java源代码转换为 python的简单但有效的库 java2python简单而有效的工具将Java源代码转换为 python 。java2python包可以翻译任何语法有效的Java源代码文件。 生成的python 代码不能保证运行,也不...

    java调用python入门详解

    1. **Jython**: 为了在Java环境中运行Python代码,我们可以使用Jython,这是一种Python的Java实现。Jython使得Python代码可以直接被Java虚拟机(JVM)执行,从而实现Java和Python的无缝集成。 2. **Python脚本调用*...

    Java调用Python.zip

    Java和Python结合使用,可以充分利用Java的高效性能和Python的易用性及丰富的库资源。 Java调用Python主要依赖于Jython、Apache Beam、Java的Runtime类或者通过第三方库如Jython-Interpeter。这里我们主要讨论使用...

    分别用Java和Python实现遗传算法的简单示例.zip

    遗传算法:分别用Java和Python实现遗传算法的简单示例.zip 遗传算法:分别用Java和Python实现遗传算法的简单示例.zip 遗传算法:分别用Java和Python实现遗传算法的简单示例.zip 遗传算法:分别用Java和Python实现...

    JAVA调用Python的接口

    java调用python脚本的工具类,可以通过在java项目中导入当前的jar包,可以来调用python的脚本代码来执行python。

    java调用python脚本

    如果你正在使用Apache相关的框架(如Spring Boot),可以考虑使用`ScriptEngineManager`配合`PythonScriptEngine`来执行Python代码,这将提供更高级别的接口,支持直接在Java环境中执行Python代码。 在提供的...

    Java调用Python各个版本的jar包

    如果你需要在Java中调用Python 2.x和3.x的不同版本,可能需要寻找其他解决方案,比如使用JPyLib或其他第三方库。 JPyLib是一个Java与Python互操作的库,它允许Java代码直接调用Python函数,反之亦然。通过JPyLib,...

    模拟退火算法的实现:分别使用Java和Python实现模拟退火算法的编程.zip

    模拟退火算法的实现:分别使用Java和Python实现模拟退火算法的编程.zip 模拟退火算法的实现:分别使用Java和Python实现模拟退火算法的编程.zip 模拟退火算法的实现:分别使用Java和Python实现模拟退火算法的编程.zip...

    thrift 的 java 和 python结合例子

    在这个"thrift的java和python结合例子"中,我们将探讨如何使用Thrift在Java和Python之间建立通信。 首先,Thrift通过定义接口描述文件(.thrift)来规范服务的接口。这个文件使用Thrift IDL(Interface Description...

    应用Java和Python实现冒泡排序算法

    冒泡排序:应用Java和Python实现冒泡排序算法 冒泡排序:应用Java和Python实现冒泡排序算法 冒泡排序:应用Java和Python实现冒泡排序算法 冒泡排序:应用Java和Python实现冒泡排序算法 冒泡排序:应用Java和Python...

    java+python实现圣诞节雪花漫天飞舞

    java+python实现圣诞节雪花漫天飞舞java+python实现圣诞节雪花漫天飞舞java+python实现圣诞节雪花漫天飞舞java+python实现圣诞节雪花漫天飞舞这个项目是使用Java和Python编写的一个圣诞节主题的雪花飘舞特效。...

    应用Java和Python分别实现堆排序算法

    堆排序:应用Java和Python分别实现堆排序算法; 堆排序:应用Java和Python分别实现堆排序算法; 堆排序:应用Java和Python分别实现堆排序算法; 堆排序:应用Java和Python分别实现堆排序算法; 堆排序:应用Java和...

    python转java

    Python 以其简洁的语法和丰富的库资源受到很多开发者的喜爱,而 Java 则因为其跨平台性、稳定性以及在企业级应用中的广泛使用而备受青睐。在某些情况下,开发者可能需要将已有的 Python 代码转换为 Java 代码,以...

    分别应用Java和Python实现银行家算法

    银行家算法:分别应用Java和Python实现银行家算法; 银行家算法:分别应用Java和Python实现银行家算法; 银行家算法:分别应用Java和Python实现银行家算法; 银行家算法:分别应用Java和Python实现银行家算法; 银行...

    java调用python中的自定义函数函数

    此外,如果你的Python环境不是Jython,还可以考虑使用其他工具,如`jpype`(Java-Python Bridge)或`py4j`,它们提供了不同的方式来实现Java和Python之间的通信。 总结来说,Java调用Python自定义函数主要依赖于如...

Global site tag (gtag.js) - Google Analytics