Pagini recente » Cod sursa (job #2311230) | Cod sursa (job #2175643) | Cod sursa (job #1346449) | Cod sursa (job #513929) | Cod sursa (job #2589062)
import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintStream;
import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class Main {
public static final int MOD = 666013;
public static PrintStream out;
public static void printResult(int result) {
out.println(result);
}
public static int remainder(int number) {
return (number % MOD);
}
public static void main(String[] args) throws FileNotFoundException {
long startTime = System.nanoTime();
Scanner in = new Scanner(new File("iepuri.in"));
out = new PrintStream(new File("iepuri.out"));
int dataSetCount = in.nextInt();
in.nextLine();
for (; dataSetCount > 0; dataSetCount--) {
String words[] = in.nextLine().split(" ", 7);
List<Integer> v = new ArrayList<Integer>();
v.add(Integer.parseInt(words[0]));
v.add(Integer.parseInt(words[1]));
v.add(Integer.parseInt(words[2]));
int a = Integer.parseInt(words[3]);
int b = Integer.parseInt(words[4]);
int c = Integer.parseInt(words[5]);
int n = Integer.parseInt(words[6]);
if (n < 3)
printResult(v.get(n));
else
for (int i = 3; ; i++) {
int x = remainder(a * v.get(i - 1)) + remainder(b * v.get(i - 2)) + remainder(c * v.get(i - 3));
x = remainder(x);
if (i == n) {
printResult(x);
break;
}
v.add(x);
}
}
long endTime = System.nanoTime();
System.out.println("Timp total: " + ((endTime - startTime) / 1000000000d) + " secunde.");
System.out.println("Timp maxim infoarena: 0.05 secunde.");
}
}