Pagini recente » Cod sursa (job #1126818) | Cod sursa (job #22656) | Cod sursa (job #1365877) | Cod sursa (job #2697853) | Cod sursa (job #1824591)
import java.io.*;
import java.util.Scanner;
/**
* Created by vlasceanusilviu on 12/8/16.
*/
class Main {
private static int[][] partialSums = new int[10][10];
public static void main(String[] args) throws IOException {
Scanner reader = new Scanner(new FileInputStream("cifra.in"));
BufferedWriter writer = new BufferedWriter(new FileWriter("cifra.out"));
initPartialSums();
int T = reader.nextInt();
for (int j = 0; j < T; ++j) {
String n = reader.next();
int lastDigit = Character.getNumericValue(n.charAt(n.length() - 1));
int preLastDigit = n.length() >= 2 ? Character.getNumericValue(n.charAt(n.length() - 2)) : 0;
int result = 0;
for (int i = 1; i <= 9; ++i) {
if (i <= lastDigit) {
if (i == 2 || i == 3 || i == 5 || i == 7 || i == 8) {
result = (result + partialSums[i][preLastDigit % 2]) % 10;
} else if (i == 4 || i == 6) {
result = (result + partialSums[i][preLastDigit % 5]) % 10;
} else if (i == 1) {
result = (result + preLastDigit + 1) % 10;
} else {
result = (result + 10 - preLastDigit - 1) % 10;
}
} else if (preLastDigit != 0) {
if (i == 2 || i == 3 || i == 5 || i == 7 || i == 8) {
result = (result + partialSums[i][(preLastDigit - 1) % 2]) % 10;
} else if (i == 4 || i == 6) {
result = (result + partialSums[i][(preLastDigit - 1) % 5]) % 10;
} else if (i == 1) {
result = (result + preLastDigit) % 10;
} else {
result = (result + 10 - preLastDigit) % 10;
}
}
}
writer.write(String.valueOf(result) + "\n");
}
reader.close();
writer.close();
}
private static void initPartialSums() {
partialSums[2][0] = 4;
partialSums[2][1] = 0;
partialSums[3][0] = 7;
partialSums[3][1] = 0;
partialSums[4][0] = 6;
partialSums[4][1] = 2;
partialSums[4][2] = 8;
partialSums[4][3] = 4;
partialSums[4][4] = 0;
partialSums[5][0] = 5;
partialSums[5][1] = 0;
partialSums[6][0] = 6;
partialSums[6][1] = 2;
partialSums[6][2] = 8;
partialSums[6][3] = 4;
partialSums[6][4] = 0;
partialSums[7][0] = 3;
partialSums[7][1] = 0;
partialSums[8][0] = 6;
partialSums[8][1] = 0;
}
}