Всем привет ,есть очень интересная задача.Я её решил,но проходит 52.17% процентов.Помогите мне найти мою ошибку и довести задачу до 100%.
Вот задача :
Рассмотрим множество целых чисел от 1 до 3n. Необходимо распределить эти числа в три массива a
, b
и c
длиной n
так, чтобы для любого i от 1 до n
выполнялось следующее: ai + bi = ci
Формат входных данных
Единственная строка содержит целое число n (1 ≤ n ≤ 23).
Формат выходных данных
Если решения не существует, то в первой строке выведите единственное число -1. В ином случае, выведите 3 строки, в каждой по n целых чисел, разделенных пробелами. В первой строке должны находиться элементы массива a, во второй – элементы массива b, в третьей – массива c. Каждое число от 1 до 3n должно быть выведено ровно один раз.
Пример входных данных
1
Пример выходных данных
1
2
3
Мой код :
long long n, a[MAXN], b[MAXN], c[MAXN], s, i;
int main()
{
cin >> n;
s = 3 * n * (3 * n + 1) / 4;
if (3 * n * (3 * n + 1) % 4 != 0)
cout << -1 << endl;
else
{
for (i = 1; i <= n; i++)
{
if (i + (i + 1) == s) a[i] = i;
b[i] = i + 1;
c[i] = s;
}
for (i = 1; i <= n; i++)
{
cout << a[i] << endl;
cout << b[i] << endl;
cout << c[i] << endl;
}
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
дано N отрезков на плоскости с началом координат в (0, 0) соответственно, расположение которых может быть абсолютно любым
Написать на C++ класс, описывающий граф/орграфКласс должен поддерживать следующую функциональность:
Нам дали изучать win api (хотя хз зачем он вообще в текущих реалиях нужен)