2-java-写代码技巧和交题注意点
用java交题要严格按照规定写代码:
比如蓝桥杯就是:
1.不能有包名;
2.Class的名字必须是 Main;
代码补全建议:
1.main函数的头可以建立class时候直接勾选,也可以: 只输入 main, 然后alt + / : 补全
2.System.out.println() : 可以 syso, 然后代码补全
快捷键:
crt + d: 删除一行
ctr + shift + o: 导包
ctr + shift + i: 代码整理对齐
alt + / : 代码补全

java交题经验:
1.读一行提取两个数字,比读两次要快。
// char a = cin.next().charAt(0);
// char b = cin.next().charAt(0);
String t = cin.nextLine();
// System.out.println(t + "--");
char a = t.charAt(0);
char b = t.charAt(2);
2. String.charAt() 比 将string 转为 char 数组取数要慢, 差别在这题中影响很小。
String s1 = cin.next();
String s2 = cin.next();
st = s1.toCharArray(); // 转为数组要快
end = s2.toCharArray();
3. 在使用对象赋值时:
java超时:
for(int i = 2; i <= n + 1; i++) {
t.x = 2 * a1.x - a0.x;
t.z = 2 * a1.z - a0.z + 2 * c[i - 1];
a0 = a1;
a1 = t;
// System.out.println(t.x + " " + t.z);
}
上面的 a0, a1,t 都是对象,这个赋值会很耗时间,使效率很低。
xx a0 = new xx(0, a[0]);
xx a1 = new xx(1, 0);
xx t = new xx(0, 0);
for(int i = 2; i <= n + 1; i++) {
t.x = 2 * a1.x - a0.x;
t.z = 2 * a1.z - a0.z + 2 * c[i - 1];
a0.x = a1.x;
a0.z = a1.z;
a1.x = t.x;
a1.z = t.z;
// System.out.println(t.x + " " + t.z);
}
System.out.printf("%.2f\n",(a[n+1] - a1.z) / a1.x);
3. 在程序在大量循环输出每一个运算结果时:(例题:52-2018 蓝桥杯省赛 B 组模拟赛(一)java第五题)
可以考虑将所有结果拼接成一个字符串然后输出,可以用StringBuilder()来拼接,这样可以大大减少输出时间,注意换行。

经验总结】Java在ACM算法竞赛编程中易错点
2-java-写代码技巧和交题注意点的更多相关文章
- JAVA写代码必须知道的编程工具
Eclipse: 一个开放源代码的.基于Java的可扩展开发平台. NetBeans: 开放源码的Java集成开发环境,适用于各种客户机和Web应用. IntelliJ IDEA: 在代码自动提示.代 ...
- 学数据库你竟然不用用JAVA写代码,可惜你遇到了我! JAVA连接数据库(JDBC)的安装使用教程
Step 1 你得有Eclipse 没有出门右拐,我教不了你. Step 2 你得有Mysql MySQL的详细安装过程,我在另一篇博客中给出.戳我 Step 3 安装JDBC 可以去官网下,如果用的 ...
- 如何用java写出无副作用的代码
搞java的同学们可能对无副作用这个概念比较陌生,这是函数式编程中的一个概念,无副作用的意思就是: 一个函数(java里是方法)的多次调用中,只要输入参数的值相同,输出结果的值也必然相同,并且在这个函 ...
- Java面试题:写代码使得分别出现StackOverflowError和OutOfMemoryError
转载自:http://www.cnblogs.com/xudong-bupt/p/3360206.html 今天做了个笔试,这是其中的一道题目:写代码使得分别出现StackOverflowError和 ...
- Java 10 的 10 个新特性,将彻底改变你写代码的方式!
Java 9才发布几个月,很多玩意都没整明白,现在Java 10又快要来了.. 这时候我真尼玛想说:线上用的JDK 7 甚至JDK 6,JDK 8 还没用熟,JDK 9 才发布不久不知道啥玩意,JDK ...
- 请注意写代码的习惯与态度(Java)
注: 以下内容引自http://blog.csdn.net/xtayfjpk/article/details/52136686 请注意写代码的习惯与态度(Java) 原创 2016年08月06日 16 ...
- java压缩文件解压:调用WinRAR5命令强于自己写代码实现
最近,手上维护着一个几年前的系统,技术是用的JSP+Strust2,系统提供了rar和zip两种压缩格式的解压功能,后台是用java实现的 1.解压rar格式,采用的是java-unrar-0.3.j ...
- php求和为s的两个数字(多复制上面写的代码,有利于检查错误)(由浅入深,先写简单算法,做题的话够用就行)
php求和为s的两个数字(多复制上面写的代码,有利于检查错误)(由浅入深,先写简单算法,做题的话够用就行) 一.总结 1.多复制上面写的代码,有利于检查错误 2.一层循环就解决了,前后两个指针,和大了 ...
- 2019前端面试系列——JS高频手写代码题
实现 new 方法 /* * 1.创建一个空对象 * 2.链接到原型 * 3.绑定this值 * 4.返回新对象 */ // 第一种实现 function createNew() { let obj ...
随机推荐
- EXT 获取gird各值
var cellclick = function (item, td, cellIndex, record, tr, rowIndex, e) { //[ListenerArgument(0, &qu ...
- Galaxy2D Game Engine 4.2 开发版发布
Update: ◆删除Graph_GetRenderTarget()函数,添加Graph_CopyBackBuffer()/Graph_CopyRanderTarget()函数 ◆Graph_EndS ...
- Nestjs学习进度-180420
# 一.已完成:# 1.将NPM降级到4.6.1,保证Nest环境正常: 2.成功运行了示例程序:https://docs.nestjs.cn/4.6/firststeps 3.粗略看了下文档. # ...
- 02-cookie简单使用
@Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletExcep ...
- idea基本使用1
首先推荐两个快捷键 alt+Ent 相当于eclipse中的crtl+1 alt+ins :能创建包,类等,还能生成getter,setter,和构造函数 首先创建一个w ...
- Verilog语言
for循环应用 1.复位寄存器组 例如有32个寄存器,需要异步复位 always@(posedge clk or negedge rst_n) begin if (rst_n == 1'b0) beg ...
- TCP流量控制
TCP的流量控制,是为了更好的传输数据,控制流量不要发送太快而至于接收端没有足够的缓存的接收. 利用滑动窗口,可以很方便的控制传输 rwnd:可以控制接收窗口大小.ACK代表确认位,ack代表确认字段 ...
- 为什么vue支持IE9以上的IE浏览器?
原因如下: 1.vue框架中核心的双向绑定原理是利用Object.defineProperty()方法实现的. 2.该方法第一个被实现是在IE8中,但是存在诸多限制:只能在DOM对象上使用这个方法,而 ...
- V先生:信息流广告标题党必备的500个热词
稍微没有全都偏,简直仅仅只永远, 已经曾经就竟然,将要立刻刚偶然, 渐渐终于决忽然,难道连续又再三, 也许必须很非常,最太十分更马上, 越极总挺常常再,屡次一定也不还. 你一定不知道.如何.最.咋.是 ...
- python自动化,使用unittest对界面操作,读取excel表格数据输入到页面查询结果,在把结果保存到另外一张excel中
# -*- coding: utf-8 -*-from selenium import webdriverfrom selenium.webdriver.common.by import Byfrom ...