huanghy

一封奇怪的信--网易游戏(互娱)2019年-游戏测试开发工程师真题

package test;

import java.io.IOException;
import java.util.Scanner;

public class RowPadding {
private static int rowCount = 1; // 总行数
private static int count = 0; // 一行的宽度
private static char[] pha = { \'a\', \'b\', \'c\', \'d\', \'e\', \'f\', \'g\', \'h\', \'i\', \'j\', \'k\', \'l\', \'m\', \'n\', \'o\', \'p\', \'q\',
\'r\', \'s\', \'t\', \'u\', \'v\', \'w\', \'x\', \'y\', \'z\' };

protected static void getValue(char[] ch, int[] padding) {
int index = 0;
for (int i = 0; i < ch.length; i++) {
index = getIndex(ch[i]);
//System.out.print(index + " ");
if (count + padding[index] > 100) {
rowCount++; // 行数加1
count = 0; // 本行统计宽度结束,开始新一行统计
}
count += padding[index];
}
}

// 返回一个字符在字母表中的位置
protected static int getIndex(char ch) {
for (int i = 0; i < 26; i++) {
if (pha[i] == ch)
return i;
}
return -1; // 表示找不到
}

public static void main(String[] args) {
String str = null;
Scanner sc = new Scanner(System.in);
int[] padding = new int[26];
for (int i = 0; i < 26; i++) {
padding[i] = sc.nextInt();
}
//System.out.print("Entry String:");
str = sc.nextLine(); // 吸收回车符
str = sc.nextLine();
char ch[] = str.toCharArray(); // 将字符串转化为字符数组
getValue(ch, padding);
System.out.println(rowCount + " " + count);
sc.close();
}
}

发表于 2019-03-09 09:27  紫电AI  阅读(390)  评论(0编辑  收藏  举报
 

分类:

技术点:

相关文章: