字符串的对比
小乐乐与字符串
http://www.nowcoder.com/questionTerminal/e09de1fc11db4a438cf8f0668848660d
import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.IOException; import java.util.*; public class Main{ public static void main(String[] args) throws IOException{ Scanner sc = new Scanner(System.in); String s = sc.nextLine(); char[] a = s.toCharArray(); long c = 0;long h = 0;long n = 0; for(int i = 0;i < a.length;i++){ if(a[i] == 'C'){ c++; }else if(a[i] == 'H'){ h = h + c; }else if(a[i] == 'N'){ n = h +n; } } System.out.println(n); } }
首先对于字符要有一个概念,如何将输入的字符串转换成一个个的字符,那就是求助于:
String s = sc.nextLine(); char[] a = s.toCharArray();
利用这个函数把输入的字符串分隔,也就是每个字母为一个数组的元素,之后开始遍历。对于一个完整的字符串‘CHN’,C、CH、CHN都可以算作一个字符,所以先遍历时,如果遇到C开始,就算一个字符,开始第二个循环,如果第二个是H,那么只能说CH连接在一起算作一个字符,所以h=h+c,还是开始的1.如果遇到N,那么这个字符串就位CN,不算做一个字符串,所以n = h + n。