Это проблема, которую я решил, но я получаю оценку нуля, когда я отправляю код. Кажется, он производит правильный вывод, когда я запускаю его на своей локальной машине. Я решил это с помощью C и Java. В случае java сервер отвечает ошибкой NZEC, причина которой также неизвестна.Интересная информация
Ввод: В первой строке содержится номер T
, который представляет собой количество тестовых примеров. Следующие T
строк содержат 3 целых числа X
, Y
и N
, разделенные пробелом.
Выход: Для каждого тестового случая напечатайте N
-й номер последовательности.
Constraints:
1) 1 <= T <= 10^6
2) 0 < N <= 50
3) 0 < X < 50
4) 0 <= Y < 3
Sample Input- Sample Output-
1 34
3 2 7
Вот мой код:
#include <stdio.h>
#include <stdlib.h>
int main() {
int array[10000], x, y, z, j;
long long int testcase;
scanf("%lld", &testcase);
for (long long int v = 0; v < testcase; v++) {
scanf("%d %d %d", &x, &y, &z);
*array = (int)(calloc ((z + 100), sizeof(int *)));
for (int i = 0; i < z + 100; i++) {
array[i] = 0;
}
for (j = 0; j < x; j++) {
array[j] = y;
}
for (int l = j; l < z; l++) {
array[l] = array[l - 1] + array[l - 2] + array[l - 3];
}
printf("%d ", array[(z - 1)]);
}
return 0;
}
Вот мой код, написанный в java--
public class TestClass {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
long testCases = Long.parseLong(sc.nextLine());
StringBuilder sb = new StringBuilder();
for (long i = 0; i < testCases; i++) {
int x = sc.nextInt();
int y = sc.nextInt();
int z = sc.nextInt();
int array[] = new int[z+1];
long sum = 0;
int j;
for (j = 0; j < x; j++) {
array[j] = y;
}
for (int l = j; l < z; l++) //add for loop in case of greater j values
{
array[l] = array[l - 1] + array[l - 2] + array[l - 3];
}
System.out.println (array[(z-1)] + " ");
}
}
}
«' число N'th последовательности.» Какая последовательность? –
Почему 'long long int testcase;'? Диапазон 'T' находится в пределах 32-битного' int'. И почему вы не проверили входные значения по их определенному диапазону и возвращаемое значение из 'calloc()'? Возможно, ** Судья ** дал входы, которые жарили его компьютер. –
'* array = (int) (calloc ((z + 100), sizeof (int *)));' Это не имеет никакого смысла. –