1 题目
url:http://jobs.p1.com/tech/
附件
2 程序
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.lang.Thread.UncaughtExceptionHandler; import java.util.Scanner; public class CoastLength { public static void main(String[] args) throws IOException { BufferedReader strin=new BufferedReader(new InputStreamReader(System.in)); String str=new String(); Integer s1=0; Integer s2=0; String s = new String(); for(s1=0,s2=0;true;){ str = strin.readLine(); s1 = str.charAt(0)-48; String st = str.substring(2, str.length()); if(s1>=1&&s2<1000&&str.charAt(1)==32&&st.length()>4){ System.out.println("oooo"); continue; } s2 = Integer.parseInt(st); System.out.println("the input data should only contain 1 or 0"); Scanner in = new Scanner(System.in); for(int j=0;j<s1;j++){ s += in.next(); } if(s.matches("[0-1]*")&&new Integer(s.length()).equals(s1*s2)){ break; } } int result = 0; int [][] arr = new int[s1][s2]; result = method(s1,s2,s); System.out.println("result"+result); } public static int method(int s1,int s2,String s){ int result=0; int [][] arr = new int[s1][s2]; for(int i=0;i<arr.length;i++){ for(int j=0;j<arr[i].length;j++){ arr[i][j] = s.charAt(i*arr[i].length+j)-48; } } for(int i=0;i<arr.length;i++){ for(int j=0;j<arr[i].length;j++){ // arr[i][j] = s.charAt(i*arr[i].length+j)-48; if(arr[i][j]==1){ result+=4; if(i-1!=-1 && arr[i-1][j]==1) result-=1; if(j-1!=-1 && arr[i][j-1]==1) result-=1; if(i+1!=arr.length && arr[i+1][j]==1) result-=1; if(j+1!=arr[i].length && arr[i][j+1]==1) result-=1; } if(arr[i][j]==0){ if((i-1!=-1 && arr[i-1][j]==1)&&(j-1!=-1 && arr[i][j-1]==1) &&(i+1!=arr.length && arr[i+1][j]==1)&&(j+1!=arr[i].length && arr[i][j+1]==1)) result-=4; } } } return result; } /* public static void print(int[][] topc){ for(int i=0;i<topc.length ;i++){ for(int j=0;j<topc[i].length ;j++){ System.out.print (topc[i][j]); } System.out.println(); } }*/ }
3 保存方式 编码ANSI
4 cmd窗口
4.1 设置字符编码方式为utf -8
C:\Windows\System32>chcp 65001 Active code page: 65001
4.2
编译且运行出结果 D:\>javac -d D:\ CoastLength.java D:\>java CoastLength 5 6 the input data should only contain 1 or 0 011110 010110 111000 000010 000000 result20
相关推荐
**Procyon** 是一个全面的Java编译器和反编译器套件,除了反编译功能,它还支持编译和语法分析。Procyon生成的源代码质量高,尤其是在处理Java 8及更高版本时表现优秀。 反编译在以下场景中尤其有用: 1. **代码...
Java程序的可逆性是其独特性质之一,由于其字节码的结构和设计,使得Java程序相对容易被反编译。反编译工具能够解析Class文件中的方法和变量名,甚至重构出接近源代码的代码,这为保护Java代码的知识产权带来了挑战...
总的来说,“编译和运行Java程序的小工具”是一个便捷的开发辅助软件,它通过集成编译和运行过程,使得Java开发变得更加轻松快捷。无论是新手学习还是资深开发者快速测试,都能从中受益。如果你是Java开发者,不妨...
在Java编程环境中,我们可以创建一个词法分析程序来处理Java源代码。这个程序通常由两部分组成:用户界面和词法分析引擎。用户界面允许用户输入Java语句,而词法分析引擎则负责处理这些输入,识别出各种不同的单词...
总的来说,“小颖Java源代码反编译专家 V1.4终极版”作为一款强大的Java反编译工具,能够为开发者提供便利,尤其是在需要理解和调试无源代码的Java程序时。然而,使用任何反编译工具都应谨慎,并且始终尊重软件的...
这个Java实现的项目名为“java实现简单的编译原理词法语法语义分析程序”,它旨在通过一个一次性的扫描过程来完成词法、语法和语义分析,针对部分C语言的语法结构进行翻译,生成三地址代码,并具备一定的错误检测和...
"jd-gui反编译工具"是Java反编译领域中的一款知名工具,它提供了一个图形用户界面(GUI),使得用户可以直观地查看和分析字节码。用户可以打开单个.class文件或整个.jar文件,jd-gui会显示对应的源代码。此外,这款...
文件列表中的`试验01`可能代表一个初学者的实践项目或实验,这通常涉及到创建、编译和运行一个简单的Java程序,以理解上述概念。这个实验可能包括创建一个简单的"Hello, World!"程序,以此来体验Java开发的基本流程...
4. Krakatau:Krakatau是一个专注于解析和生成Java字节码的工具集,它可以反编译字节码,同时也支持编译Java源代码。 使用这些工具时,需要注意的是,反编译可能会导致源代码的格式和注释丢失,而且反编译的代码...
总之,PL0语言编译程序的Java实现是一个实践编译器设计理论的宝贵项目,它涵盖了许多核心的编译技术,并能帮助学生掌握如何将高级语言翻译成机器可理解的形式。通过这个项目,不仅可以深入了解编译器的工作机制,还...
编译原理词法分析简单程序java,采用的是五种分法,简单易解,适合刚学java但又想写词法分析的学生使用
Java反编译是Java开发中一个重要的辅助工具,它能够帮助开发者查看已编译的`.class`文件中的源代码,即使原始的`.java`源文件已经丢失或未被提供。这个过程对于理解类库的工作原理、逆向工程、调试、学习或者分析...
本资源提供了一个简单的JAVA Application和JAVA Applet的示例代码,演示了如何编写、编译和运行这些程序。 五、编程实现 本资源还提供了两个编程实现的示例,演示了如何使用JAVA语言实现随机产生20个整数存放到...
通常,一个简单的Java程序包括一个公共类和主方法。例如: ```java public class Hello { public static void main(String[] args) { System.out.println("hello world"); } } ``` 这段代码定义了一个名为`...
在这个例子中,Example1.java可能包含了一个简单的"Hello, World!"程序,这是学习新编程语言的典型起点。以下是一个标准的"Hello, World!"程序: ```java public class Example1 { public static void main(String...
2. 一个程序中是否能存在两个访问权限为 public 的类?通过程序验证你的判断。 六、线程实验 实验目的:掌握 Java 多线程程序的特点,编译,调试及运行方法。 实验环境:Java 编译系统。 预备知识:线程及进程的...
利用Linux中的GNU调试工具gdb调试Java程序也 十分简单。 在使用GCJ编程中,我们需要以下工具: 1. Java编译器:GCJ 2. Java库:libgcj 3. Java调试器:gdb 4. 代码编辑器,如vi、emacs或其它 在Red Hat Linux7中...
本文首先讨论了保护Java程序的基本方法,然后对代码混淆问题进行深入研究,最后结合一个实际的应用程序,分析如何在实践中保护Java程序。 Java代码保护的重要性 Java语言的应用在全世界范围正流行,它广泛的应用在...