新引用的API

.substring() 返回字符串的子字符串

使用说明:

public class Test {public static void main(String args[]) {String Str = new String("www.runoob.com");System.out.print("返回值 :" );System.out.println(Str.substring(4) );//一个参数则位开始端索引System.out.print("返回值 :" );System.out.println(Str.substring(4, 10) );//两个参数则前者为开始端索引,后者为结束端索引}
}

输出:

返回值 :runoob.com
返回值 :runoob

.substring() 实操
当然了,这是新学的方法,要是按照老路子来的话也不用那么麻烦,直接用.trim()掐头去尾照样20分(亲测有效)

解题思路

在不建立新数组的前提下完成数组中个元素的位移

1. 这是PAT乙级题库中第一次有输入流第一行有两个数字,方法是用一个字符串数组存储输入的信息并用空格隔开

 String[] buf = bf.readLine().split(" ");

之后输入任意多个由空格隔开的数字,一开始我的代码是这样的

int N = Integer.parseInt(buf[0]);
int M = Integer.parseInt(buf[1]);

但是在提交的过程中会有两个测试点错误
修改后

int N = Integer.parseInt(buf[0]);
int M = Integer.parseInt(buf[1])%N;

保证移动的位数小于数组的总长度

int N = Integer.parseInt(buf[0]);//每输入一个数,数组序号+1`

2. 把第N-M个数定义为数组中的第一个元素,循环输出到第N-1个数,用空格连接;接下来从第零个数到第N-M-1个数输出

for (int i = N - M; i < N; i++) {sbBuilder.append(buf[i] + " ");}for (int j = 0; j < N - M; j++) {sbBuilder.append(buf[j] + " ");}

~~

源代码如下

~~

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;public class Main {public static void main(String[] args) throws IOException {BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));String[] str = bf.readLine().split(" ");int a = Integer.parseInt(str[0]);int b = Integer.parseInt(str[1]) % a;String[] buf = bf.readLine().split(" ");StringBuilder sb = new StringBuilder("");for (int i = a - b; i < a; i++) {sb.append(buf[i] + " ");}for (int j = 0; j < a - b; j++) {sb.append(buf[j] + " ");}System.out.println(sb.toString().substring(0,sb.length()-1));}
}

PAT_B_1008_Java(20分)相关推荐

  1. 7-1 查找书籍(20 分)(程序设计天梯赛模拟练习题)

    7-1 查找书籍(20 分) 给定n本书的名称和定价,本题要求编写程序,查找并输出其中定价最高和最低的书的名称和定价. 输入格式: 输入第一行给出正整数n(<10),随后给出n本书的信息.每本书 ...

  2. PTA—输出全排列 (20分) 递归回溯思想

    PTA-输出全排列 (20分) 递归回溯思想 题目要求: 请编写程序输出前n个正整数的全排列(n<10),并通过9个测试用例(即n从1到9)观察n逐步增大时程序的运行时间. 输入格式: 输入给出 ...

  3. 2、求100以内的素数之和。(20分)

    题目: /* 2.求100以内的素数之和.(20分) */ 代码: public class Two207 {public static void main(String[] args) {int s ...

  4. 1、输入四个整数,按照从小到大顺序输出。(20分)

    题目: /* 1.输入四个整数,按照从小到大顺序输出.(20分) */ 代码: 注:题目说的是四个数的排序,我就直接写了个冒泡排序 public class One207 {public static ...

  5. /* * 编程题第五题(20分): 本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”,要求按下列格式打印 ***** *** * *** ***** 所谓“

    题目: 编程题第五题(20分): 本题要求你写个程序把给定的符号打印成沙漏的形状.例如给定17个"*",要求按下列格式打印 *****************    所谓" ...

  6. /* * 编程题第四题(20分): 用1元5角钱人名币兑换5分、2分和1分的硬币(每一种都要有)共一百枚,问共有几种兑换方案?并输出每种方案。 */

    题目: /* 编程题第四题(20分): 用1元5角钱人名币兑换5分.2分和1分的硬币(每一种都要有)共一百枚,问共有几种兑换方案?并输出每种方案. */ 我使用java做的 public class ...

  7. /* * 编程第三题(20分) 打印所有的水仙花数。所谓水仙花数是指一个三位数,其各位数字的立方和等于该数本身。(例153=1*1*1+3*3*3+5*5*5) */

    题目: /* 编程第三题(20分) 打印所有的水仙花数.所谓水仙花数是指一个三位数,其各位数字的立方和等于该数本身.(例153=111+333+555) */ 我是用java做的 public cla ...

  8. /* * 编程第二题(20分): 一球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下。求它在第十次落地时,共经过多少米?第十次反弹多高? */

    题目: /* * 编程第二题(20分): 一球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下.求它在第十次落地时,共经过多少米?第十次反弹多高? */ 我是用java做的 public ...

  9. /* * 编程第一题(20分): 1+(1+2)+(1+2+3)+……+(1+2+3+……+98+99+100) */

    题目: /* 编程第一题(20分): 1+(1+2)+(1+2+3)+--+(1+2+3+--+98+99+100) */ 我是用的java做的 class One {public static vo ...

最新文章

  1. 卡尔曼滤波:究竟滤了谁?
  2. android获取导航栏宽高,Android获取屏幕的宽高度、状态栏、标题栏、导航栏、编辑区域高度...
  3. (30)保护模式阶段测试
  4. AtCoder Grand Contest 030 自闭记
  5. codematic2连接mysql失败_codematic2.rar
  6. python安卓开发实例_python服务器与android客户端socket通信实例
  7. ajax php 返回值 数组,ajax 返回数组怎么解决???
  8. arm linux 页表寻址,操作系统中的页表寻址
  9. xcorr函数_相关函数xcorr的用法及实例
  10. nachos中文教程java_Nachos3.4系列-2 Makefile 与Nachos中文教程 【转】
  11. 提升交互设计必备的28本好书
  12. 戴尔台式计算机怎么安装的,戴尔台式机怎么安装无线网卡驱动
  13. 计算机网络原理笔记精整理(汇总)
  14. python 线性相关 与 线性拟合
  15. 【鸡啄米】VC++串口通信编程详解
  16. 多智能体协同控制(从零开始)(一)
  17. 淘宝商品详情页API接口、淘宝商品销量API接口、淘宝商品列表API接口、淘宝APP详情API接口、淘宝详情API接口
  18. CVPR2017 | G-RMI_Google大佬构建的姿态估计baseline
  19. windows下安装spark
  20. java 生成一个随机整数,范围从 1 到 10;或 生成一个 0 或 1 的随机整数

热门文章

  1. linux终端默认密码是多少,linux基础懂多少?两个小问题考考你
  2. linux添加静态网关route文件,详解Linux系统中配置静态路由的方法
  3. 验证手机号码归属地_手机号码归属地能否取消? 工信部回复了
  4. android studio 虚拟机adb.exe已停止工作的处理
  5. java 防并发_并发:如何防止两个不同类中的两个方法同时运行?
  6. oracle行迁移实验,Oracle 行迁移 amp; 行链接的检测与消除
  7. 安卓dts音频解码_DTS音效、解码、编码概念剖析
  8. PHP算法学习(6) 单向链表 实现栈
  9. 100行代码实现了多线程,批量写入,文件分块的日志方法
  10. 设计模式的征途—3.工厂方法(Factory Method)模式