P1055 [NOIP2008 普及组] 题解
题目链接
Java 代码
package luoguTest;
import java.util.Scanner;
public class P1055 {
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
String str = sc.nextLine() ;
int sum = 0 ;
int j =1 ;
char c ;
for(int i = 0 ; i <= 10 ; i++) {
if(str.charAt(i) == '-') {
continue ;
}
sum += (str.charAt(i) - '0' ) * j++ ;
}
if(sum%11 < 10) {
c = (char) (sum%11+'0') ;
} else {
c = 'X' ;
}
if(str.charAt(12) == c) {
System.out.println("Right");
} else {
String res = str.substring(0,12) + c ;
System.out.println(res);
}
}
}
关键分析
for(int i = 0 ; i <= 10 ; i++) {
if(str.charAt(i) == '-') {
continue ;
}
sum += (str.charAt(i) - '0' ) * j++ ;
}
sum=(s.charAt(0)-'0')*1+(s.charAt(2)-'0')*2+(s.charAt(3)-'0')*3+(s.charAt(4)-'0')*4+(s.charAt(6)-'0')*5+(s.charAt(7)-'0')*6+(s.charAt(8)-'0')*7+(s.charAt(9)-'0')*8+(s.charAt(10)-'0')*9;
sum += (str.charAt(i) - '0' ) * (i+1) ;
sum += (str.charAt(i) - '0' ) * j++ ;