Java解决字符串的分数
01 题目
-
给你一个字符串
s
。一个字符串的 分数 定义为相邻字符 ASCII 码差值绝对值的和。请你返回
s
的 分数 。示例 1:
**输入:**s = “hello”
**输出:**13
解释:
s
中字符的 ASCII 码分别为:'h' = 104
,'e' = 101
,'l' = 108
,'o' = 111
。所以s
的分数为|104 - 101| + |101 - 108| + |108 - 108| + |108 - 111| = 3 + 7 + 0 + 3 = 13
。示例 2:
**输入:**s = “zaz”
**输出:**50
解释:
s
中字符的 ASCII 码分别为:'z' = 122
,'a' = 97
。所以s
的分数为|122 - 97| + |97 - 122| = 25 + 25 = 50
。提示:
2 <= s.length <= 100
s
只包含小写英文字母。
02 知识点
- 循环
- 字符串
- 数组
03 我的题解思路
import java.util.ArrayList;
import java.util.HashSet;
public class scoreOfString {
public static void main(String[] args) {
String s = "hello";
scoreOfString(s);
}
public static int scoreOfString(String s) {
int rs=0;//返回值
char[] cs=s.toCharArray();//转数组
for (int i = 0; i < cs.length-1; i++) {
rs+=Math.abs(cs[i]-cs[i+1]);//加绝对值
}
return rs;
}
}