当前位置: 首页 > wzjs >正文

程序员做一个网站多少钱胖哥网站的建设目标

程序员做一个网站多少钱,胖哥网站的建设目标,装饰公司经营范围,wordpress 4.7.2下载dd爱框框 实例: 输入: 10 20 1 1 6 10 9 3 3 5 3 7 输出: 3 5 这道题要解决Java中输入的数过多时,时间不足的的问题。 应用这个输入模板即可解决: Java中输入大量数据 import java.util.*; import java.io.*;pu…

dd爱框框

实例:

输入:

10 20
1 1 6 10 9 3 3 5 3 7

 输出:

3 5

这道题要解决Java中输入的数过多时,时间不足的的问题。

应用这个输入模板即可解决:

Java中输入大量数据

import java.util.*;
import java.io.*;public class Main {public static void main(String[] args) throws IOException {Read in = new Read();}
}class Read {StringTokenizer st = new StringTokenizer("");BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));String next() throws IOException{while(!st.hasMoreTokens()) {st = new StringTokenizer(bf.readLine());}return st.nextToken();}String nextLine()  throws IOException{return bf.readLine();}int nextInt() throws IOException{return Integer.parseInt(next());}Double nextDouble() throws IOException{return Double.parseDouble(next());}long nextLong() throws IOException{return Long.parseLong(next());}
}

稍微解释一下代码的作用,通过BufferedReader更改字节流输入字符流输入,加速快字符的输入

再通过StringTokenizer将输入的字符串进行切割,用于下一步的转换。

对于nextLine()这个方法由于输入时是String得到的也是String,就可以直接返回BufferedReader

中读取的字符串。

而对于其他比如nextInt()需要进行切割后用Integer.parseInt()转化,所以统一把切割这一步封装为next()。

st.hasMoreTokens()这个用于读取多行,其他的就记住就行。

封装完成后的使用方法与Scanner一致。

接下来讲解这道题:

题解:

解法一:暴力解法

我做题如果不是熟悉的题,基本第一时间还是想到的暴力遍历,然后再优化。

对于这道题来说,把所有情况统计下来,还要兼顾长度相同时,取最小的l的情况,无疑是不能通过的。那么如何进行优化呢?

有了之前这种题的经验:数组中两个字符串的最小距离,我想到继续用临时变量取存储,然后再不断更新,因此,我们现在就尝试寻找满足这样的条件是什么。

要存储那个变量呢?结果要输出左右下标,那么这个肯定优先考虑,那么还有其他的需要考虑吗,意识到要遍历所有的情况,我们可以定义两套变量,一套用于遍历所有情况,一套用于存储输出结果,并且结合题目还要计算数组和,所以这个也要定义。

下面要考虑什么时候更新数据,当遍历到的数据和满足 >x时,判断是否小于输出结果记录的值,然后更新,有点像双指针的思路,从头开始遍历时,如果和大于x后就两头向内坍缩,但由于是向右遍历的,那么右边的就可以不用向回走(因为题目中要求的x一定是大于0的),比如1,2,3这一组数,如果x=5,那么左边就可以减少一个,但是右边就没必要减,如果右边也可以减,那么这组遍历在1,2就会因为>x而停下。

代码:

import java.util.*;
import java.io.*;public class Main {public static void main(String[] args) throws IOException {Read in = new Read();int n = in.nextInt();int x = in.nextInt();int[] arr = new int[n+1];for(int i = 1; i <= n; i++) {arr[i] = in.nextInt();}//记录遍历数据与输出数据int l = 1, retl = -1;int r = 1, retr = -1;int count = 0;int ret = n;while(r <= n) {//统计和count += arr[r];while(count >= x) {//注意这个等号,恰好相等时也要更新//向内坍缩  双指针if(r - l + 1 < ret) {//保证输出的是l最小的retl = l;retr = r;ret = r-l+1;}count -= arr[l++];}r++;}System.out.println(retl + " " + retr);}
}class Read {StringTokenizer st = new StringTokenizer("");BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));String next() throws IOException{while(!st.hasMoreTokens()) {st = new StringTokenizer(bf.readLine());}return st.nextToken();}String nextLine()  throws IOException{return bf.readLine();}int nextInt() throws IOException{return Integer.parseInt(next());}Double nextDouble() throws IOException{return Double.parseDouble(next());}long nextLong() throws IOException{return Long.parseLong(next());}
}

http://www.dtcms.com/wzjs/555296.html

相关文章:

  • 中小企业网站制作塞尼铁克杭州装饰装潢公司10大品牌
  • 说明网站建设岗位工作职责wordpress去除更新提示
  • 网站建设过程总结为爱直播视频
  • 电子购物网站的设计与实现服装箱包网站建设
  • 河北省建设厅网站电话wordpress 主题 标签
  • 淘宝客做网站怎么赚钱杭州做公司网站的公司
  • 360搜索网站提交入口常州网页定制
  • 旅游电商网站有哪些网站策划和运营
  • 建站模板系统微信打卡小程序怎么做
  • 中装建设网站磁县邯郸网站建设
  • 网站建设项目的工作分解网站别人帮做的要注意什么
  • 建设联结是不是正规网站wordpress 主题 2016
  • 电商网站 建设腾讯云服务器
  • 网站做微信支付宝支付seo的主要分析工具
  • 做个个人网站要怎么做wordpress jianux
  • 支付网站建设会计分录装修设计素材网
  • centos 如何建立网站wordpress 自适应插件
  • 百度网站评级整站优化工具
  • 宜兴市住房和城乡建设局网站网站怎么实现邮件验证
  • 手机壳定制网站制作电商首页设计分析
  • 网站名称注册程序成都seo服务
  • 北京网站建设签约做网站拿来卖
  • 二元期货交易网站开发拼多多关键词排名在哪里看
  • 前端学习网站建设教程网站建设除了凡科还有哪些
  • 二手房网站建设书网站模糊效果
  • 百度收录文章整站seo排名要多少钱
  • 佛山建站公司哪家好ps网页设计稿
  • 慈溪市建设局网站表格下载个人网站的设计与实现
  • 网站优化的基本思想产品设计
  • 做外贸有哪些好的网站怎么快速刷排名