Бред

Ответить в тред Ответить в тред
Аноним 27/11/20 Птн 14:33:32 2341344971
15371824971090.jpg 56Кб, 597x519
597x519
Блять, не могу разобраться с двумерными массивами в с++. Как сдвигать элементы по диагонали вниз вправо в массиве 3х3? В программировании хлебушек и не понимаю почти нихуя.
Аноним 27/11/20 Птн 14:37:09 2341346662
#include <iostream>
#include<iomanip>
#include <cstdlib>
using namespace std;
int main()
{
setlocale(LC_ALL, "Russian");
const int n = 3, m = 3;
const int w = 4;
int ar[n][m];
srand(time(NULL));
for (int i = 0; i < n; ++i)
{
for (int j = 0; j < m; ++j)
{
if (rand() % 2)
{
ar[j] = rand() % 100;
}
else
{
ar[j] = rand() % 100 * (-1);
}
}
}
cout << "Исходный массив" << endl;
for (int i = 0; i < n; ++i)
{
for (int j = 0; j < m; ++j)
{
cout << setw(w) << ar[j];
}
cout << endl;
}


for (int k = 0; k < n; ++k)
{
for (int l = 0; l < m; ++l)
{
for (int i = 0; i < n; ++i)
{
for (int j = 0; j < m; ++j)
{
if (i + 1 == n and j + 1 == m)
{
continue;
}
else
{
if (j + 1 == m and ar[j] > ar[i + 1][0])
{
int t = ar[j];
ar[j] = ar[i + 1][0];
ar[i + 1][0] = t;
}
else
{
if (ar[j] > ar[j + 1])
{
int t = ar[j];
ar[j] = ar[j + 1];
ar[j + 1] = t;
}
}
}
}
}
}
}
cout << "Сортированный массив" << endl;
for (int i = 0; i < n; ++i)
{
for (int j = 0; j < m; ++j)
{
cout << setw(w) << ar[j];
}
cout << endl;
}
return 0;
}
Есть код с чем-то подобным, как из него сделать решение оп-поста?
Аноним 27/11/20 Птн 14:37:33 2341346913
Бамп
Аноним 27/11/20 Птн 14:38:11 2341347204
Аноним 27/11/20 Птн 14:40:56 2341348645
>>234134720
Спасибо, а как переделать?

Абу благословил этот пост.
Аноним 27/11/20 Птн 14:41:29 2341349006
16029584404693.jpg 216Кб, 1500x844
1500x844
Бамп
Аноним 27/11/20 Птн 14:42:31 2341349607
CN9tt71NTP4.jpg 55Кб, 565x800
565x800
Бамп
Аноним 27/11/20 Птн 14:43:43 2341350368
n6EAdwVOeCc.jpg 80Кб, 640x480
640x480
Бамп
Аноним 27/11/20 Птн 14:44:35 2341350819
rU6j3d-WJY.jpg 97Кб, 877x1024
877x1024
Бамп
Аноним 27/11/20 Птн 14:44:46 23413510010
+1 в первую цифру индекса, +1 во вторую? Объекту с индексом [2,2] присваиваешь все, что есть у объекта с индексом 1,1, потом объекту с индексом 1,1 даёшь все, что есть у индекса 0,0, а индексу 0,0 даёшь что-то новое. В теории так, хз, как это в с++ писать. мимо-два месяца учу с#
Аноним 27/11/20 Птн 14:46:16 23413518411
>>234135100
Там по другому как-то надо. Тут ты просто механически прописываешь, а там через for надо
Аноним 27/11/20 Птн 14:46:29 23413520012
>>234134864
не использовать локаль вообще нахуй никогда если ты не пишешь приложения, которые должны быть локализованы. локаль это пиздец монструозная и ненужная хуета
Аноним 27/11/20 Птн 14:47:45 23413529013
>>234135200
Скажи это нашим преподам
Аноним 27/11/20 Птн 14:48:40 23413535314
Аноним 27/11/20 Птн 14:49:36 23413540715
>>234135184
Он тебе алгоритм написал.
Аноним 27/11/20 Птн 14:50:09 23413544716
>>234135184
?
for (int a=2, b=2; a>0, b>0; a--, b--)
Array [a,b]=array[a-1,b-1]
Такая схема. Хз, можно ли так писать.
Аноним 27/11/20 Птн 14:52:26 23413557817
Нарисуй матрицу и покажи, что куда должно сдвигаться - я тебе напишу код.
Аноним 27/11/20 Птн 14:54:05 23413567218
>>234135578
Диагональ от 0,0 и до конецмассива,конецмассива должна сдвигаться на +1 элемент, как я его понял. Объект 0,0 теперь будет объектом 1,1 и т.д.
Аноним 27/11/20 Птн 14:57:01 23413585219
3333333333333333.png 312Кб, 1152x648
1152x648
Аноним 27/11/20 Птн 14:57:35 23413589020
>>234135672
А объект [2,2] - каким? [0,0]? Я так понял 3 диагонали должны сдвинуться, но что там ОП имел в виду я хуй знает.
Аноним 27/11/20 Птн 14:58:14 23413593421
>>234135852
Ой не, в пизду, это сложно слишком, это уже ближе к computer science, в работе такое не встречается.
Аноним 27/11/20 Птн 14:58:40 23413595622
>>234135852
А если так, то это вообще yoba какая-то, и думать надо
Аноним 27/11/20 Птн 14:58:49 23413596623
>>234135890
>А объект [2,2] - каким? [0,0]?
Да
Аноним 27/11/20 Птн 14:59:12 23413599124
>>234135956
Думаю уже второй день, все никак
Аноним 27/11/20 Птн 15:00:11 23413605325
>>234135852
Не, ну это точно хуета. С [1,2] не должно переходить на [1,0]. По идее, должно быть [1,2] => [0,1].
Аноним 27/11/20 Птн 15:00:32 23413607526
>>234134497 (OP)
<kznm/
Нормально опиши задание.
А то блять сдвигать в массиве. А на место сдвинутого хуй ставить или что?
А по смыслу тебе придется хуярить циклы в цикле.
Рекомендую через while но ради боженьки ограничь цикл а то замастабируешь до out of memory
Аноним 27/11/20 Птн 15:01:12 23413612227
Жду кароче ОП-а с галкой, пусть нарисует или идёт нахуй. Если нарисует - напишу код.
Аноним 27/11/20 Птн 15:02:08 23413618228
>>234135966
А, пф, тогда просто создай объект, который не входит в массив, и до начала цикла присвой ему все свойства объекта 2,2. После цикла сделай этот объект элементом массива с индексом 0,0. Панятна?
Аноним 27/11/20 Птн 15:06:41 23413648029
>>234135991
Ты непонятно нарисовал, рисуй ещё раз. У тебя не все клеточки куда-то переходят после перестановки. Что делать с теми, от которых ты не нарисовал стрелочки?
Аноним 27/11/20 Птн 15:06:58 23413650030
>>234136182
Ебать костыль.
Мож нормально функцию реализовать не не вот это вот все?
Аноним 27/11/20 Птн 15:07:21 23413652631
>>234136480
Бля я сам уже нихуя не понимаю
Аноним 27/11/20 Птн 15:08:16 23413658832
>>234136526
Сфоткай задание или скопипасть заебал тянуть кота за вымя
Аноним 27/11/20 Птн 15:08:48 23413661433
>>234136500
Я извиняюсь, а как ты собираешься нормально реализовать функцию без объявления ещё одной переменной, чтобы сохранять какое-то значение? Ну хочешь написать метод, который будет объявлять внутри себя эту переменную - пиши. По итогу все равно будет тот же самый процесс, не?
Аноним 27/11/20 Птн 15:10:22 23413671034
>>234136614
Так нахуй что то объявлять если есть какойто раномный массив и он уже наполнен?
Остается доебаться до опа чтобы он выложил что надо сделать.
Аноним 27/11/20 Птн 15:11:11 23413675735
P01102-125642(1).jpg 751Кб, 3512x824
3512x824
Аноним 27/11/20 Птн 15:11:34 23413677636
>>234136614
Да и нахуй нам еще переменная если тупо счетчик внутри цикла можно реализовать и от нее плясать?
Аноним 27/11/20 Птн 15:13:27 23413690137
>>234136710
Дядя, по-моему ты путаешься.
Если у тебя есть a=1, b=2, то ты не можешь поменять их значения, не объявив ещё одну переменную.
По-любому придется сделать
c=a,
a=b,
b=c
Чтобы по итогу было b=1, a=2.
В этом задании то же самое.
Аноним 27/11/20 Птн 15:13:28 23413690238
image.png 707Кб, 1280x720
1280x720
>>234136757
Давай сам как-то.
мимосиньор300кк/нс
Аноним 27/11/20 Птн 15:15:41 23413705239
>>234136757
Ну так изи же, просто херачишь алгоритм внутри алгоритма, плюс банальная перестановка значений двух переменных с помощью определения ещё одной переменной. Понял или не понял? Могу написать в с# код, если не понял ещё.
Аноним 27/11/20 Птн 15:16:07 23413707640
>>234136757
Ну и че непонятного. Для обычных перемещений так, как тебе уже расписали, а для краевых с особым условием, проверку там ебани для выхода за пределы массива, и укажи куда кому следовать.
Аноним 27/11/20 Птн 15:16:14 23413708641
Ну нахер.....mp4 695Кб, 1280x720, 00:00:06
1280x720
Аноним 27/11/20 Птн 15:16:16 23413708842
Пиздец ты хуй я такую залупу ещё в школе писал, когда the life делал.
Аноним 27/11/20 Птн 15:18:12 23413720643
>>234137088
Так изи задание же, такие и даются в школах, когда массивы проходят. Наверно, скоро и мне что-то такое зададут, лол.десятый класс
Аноним 27/11/20 Птн 15:19:17 23413727044
/тхреад?
ОП понял?
Аноним 27/11/20 Птн 15:20:08 23413733245
image.png 784Кб, 1232x538
1232x538
Если тебе непонятно, кто где должен находиться после сдвига
Аноним 27/11/20 Птн 15:20:44 23413737346
>>234136757
#include <iostream>
#include <iomanip>

using namespace std;

int main()
{
const int n=5;
int arr[n][n],m,k;

//ввод исходного массива
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
cout<<"arr["<<i<<"]["<<j<<"]=";
cin>>arr[j];
}
}

//вывод исходного массива
cout<<"\nYour array: \n";
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
cout<<setw(5)<<arr[j];
}
cout<<endl;
}

//ввод величины сдвига m
cout<<"\nm=";
cin>>m;

//сдвиг главной диагонали на m элементов вверх
for(int i=0;i<m;i++)
{
int tmp=arr[0][0];

for(int j=0;j<n;j++)
{
arr[j][j]=arr[j+1][j+1];
}

arr[n-1][n-1]=tmp;
}

//вывод нового массива
cout<<"\nNew Array: \n";
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
cout<<setw(5)<<arr[j];
}
cout<<endl;
}

//ввод величины сдвига k
cout<<"\nk=";
cin>>k;

//сдвиг побочной диагонали на k элементов вниз
for(int i=0;i<k;i++)
{
int tmp=arr[n-1][0];

for(int j=n-1,r=0;j>0;j--,r++)
{
arr[j][r]=arr[j-1][r+1];
}

arr[0][n-1]=tmp;
}

//вывод нового массива
cout<<"\nNew Array: \n";
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
cout<<setw(5)<<arr[j];
}
cout<<endl;
}

return 0;
}
1
Аноним 27/11/20 Птн 15:20:55 23413738847
>>234135200
Когда в стандартную либу добавят юникод, тогда и ебальник открывать сможешь
Аноним 27/11/20 Птн 15:20:59 23413739448
>>234136901
a = 3;
b = 7;

a = b - a;
b = b - a;
a = a + b;

В итоге a = 7, b = 3.
И так с любыми данными


мимо c++ прогер четвертый курс
Аноним 27/11/20 Птн 15:21:14 23413741949
Аноним 27/11/20 Птн 15:22:50 23413751850
>>234137419
Локаль говно! АСКИ - ВСЕ!
Все должны знать инглиш!
Аноним 27/11/20 Птн 15:24:01 23413759051
>>234137518
Портфель на завтра собрал, максималист?
Аноним 27/11/20 Птн 15:24:12 23413760052
Аноним 27/11/20 Птн 15:24:29 23413762453
>>234137394
А что с эффективностью такого способа? Операция присваивания выполняется быстрее, чем сложения/вычитания? Понятно, что памяти больше используется, но получается ли быстрее?
Аноним 27/11/20 Птн 15:24:31 23413762654
>>234137394
Ну зачем ты так его приложил?
Аноним 27/11/20 Птн 15:24:37 23413763455
Аноним 27/11/20 Птн 15:24:59 23413765756
Аноним 27/11/20 Птн 15:25:10 23413767357
>>234136901
>Если у тебя есть a=1, b=2, то ты не можешь поменять их значения, не объявив ещё одну переменную.
Можешь.
a = a xor b
b = a xor b
a = a xor b
Аноним 27/11/20 Птн 15:25:30 23413769858
7.png 37Кб, 1016x572
1016x572
Аноним 27/11/20 Птн 15:25:31 23413769959
>>234137600
Междуножный питон в посте про плюсы!
Ты районом ошибся
Аноним 27/11/20 Птн 15:25:36 23413770360
>>234137624
Через xor эффективность максимальная(побайтовая хуетень)
Аноним 27/11/20 Птн 15:26:16 23413773461
>>234137703
О епта держи оптимизатора!
Аноним 27/11/20 Птн 15:26:40 23413776162
Аноним 27/11/20 Птн 15:26:55 23413777863
Аноним 27/11/20 Птн 15:27:46 23413782964
>>234137778
Не знаю, не запускается, типа не видит >>, хотя они есть
Аноним 27/11/20 Птн 15:27:55 23413783765
>>234137394
Гений в треде, лол. Почему я раньше до такого не додумался?
да, кстати, как это будет выглядеть, если у тебя вместо a и b будут объекты твоего кастомного класса со своими кастомными свойствами? Все равно придется создать объект ещё один и ему присвоить все свойства? Да и со string то же самое. То, что ты написал, работает только для чисел, вроде?
Аноним 27/11/20 Птн 15:28:18 23413786766
Аноним 27/11/20 Птн 15:29:07 23413792467
Аноним 27/11/20 Птн 15:29:26 23413793868
Аноним 27/11/20 Птн 15:29:55 23413797469
>>234137924
Думай усерднее, легко поймёшь. Напрягай моск, сцук, иначе зачем он у тебя есть?
Аноним 27/11/20 Птн 15:30:53 23413804770
>>234137624
>>234137703
>>234137734
Да что так что эдак, все-равно компилятор на релизе все как надо оптимизирует. Без глубоких знаний различий архитекур и работы процессора ты его не переоптимезиоуешь, так что срать.

>>234137626
А че бы и нет?) Нужно же хоть где-то понтануться

>>234137657
Да не такой уж это и костыль. Просто задачка.

ВСЕМ АХТУНГ!
Кто хочет войти-в-ойти, на собесе часто задают задачку про перемену мест переменных без третей переменой. Вот вам решение
Аноним 27/11/20 Птн 15:31:41 23413809771
>>234137829
return 0;
}
1
Последнюю еденичку удали
Чутка миссклик
Аноним 27/11/20 Птн 15:32:36 23413815172
>>234138097
Я ее с самого начала не копировал
Аноним 27/11/20 Птн 15:32:42 23413815873
Аноним 27/11/20 Птн 15:32:50 23413816774
>>234137837
Все данные, как и строки, так и классы со свойствами по-сути тупо бинарное ЧИСЛО. Его можно так же складывать и вычитаь.

плюс тут писали про xor, с байтами может даже и реализовать проще
Аноним 27/11/20 Птн 15:32:54 23413817375
>>234138047
>Да что так что эдак, все-равно компилятор на релизе все как надо оптимизирует. Без глубоких знаний различий архитекур и работы процессора ты его не переоптимезиоуешь, так что срать.
Да я не вчитывался в твоё решение просто, да, одна хуйня.
Аноним 27/11/20 Птн 15:33:11 23413819276
Аноним 27/11/20 Птн 15:33:14 23413819977
image 58Кб, 432x290
432x290
Аноним 27/11/20 Птн 15:34:05 23413826078
А ты мне чё?
Аноним 27/11/20 Птн 15:34:39 23413830279
>>234138167
Блин, а как так делать? Есть где-то видосики или почитать что-то? Для бинарных чисел ведь не работает обычная математика? У них там свои операции, не? Я слишком мало знаю.
Аноним 27/11/20 Птн 15:34:48 23413831080
>>234138151
Ну отдрочи компилятор в какой строке хоть?
Аноним 27/11/20 Птн 15:36:38 23413843781
>>234138302
Дискретная математика.
Аноним 27/11/20 Птн 15:36:54 23413845582
>>234138199
Залезь внутрь этой функции и почитай как она работает. Та же херня с третьей переменной, но с тысячей проверок и защитой от долбоебов (от того и медленнее)
Аноним 27/11/20 Птн 15:37:00 23413846083
>>234138302
Ну возьми там учебник по информатике за 5 класс, хз, там написано всё.
Аноним 27/11/20 Птн 15:37:21 23413847684
>>234138310
#include <iostream>
#include <iomanip>
#include <stdlib.h>
#include <windows.h>
#include <ctime>

using namespace std;

int main()
{
const int n = 5;
int arr[n][n];
int m, k;

//ввод исходного массива

//вывод исходного массива
cout << "\nYour array: \n";
for (int i = 0; i < m; i++)
{
for (int j = 0; j < k; j++)
{
arr[j] = rand() % 90 + 10;
}
}
for (int i = 0; i < m; ++i)
{
for (int j = 0; j < k; j++)
{
cout << arr[j] << " ";
}
}


//ввод величины сдвига m
cout << "\nm=";
cin >> m;

//сдвиг главной диагонали на m элементов вверх
for (int i = 0; i < m; i++)
{
int tmp = arr[0][0];

for (int j = 0; j < n; j++)
{
arr[j][j] = arr[j + 1][j + 1];
}

arr[n - 1][n - 1] = tmp;
}

//вывод нового массива
cout << "\nNew Array: \n";
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
{
cout << setw(5) << arr[j];
}
cout << endl;
}

//ввод величины сдвига k
cout << "\nk=";
cin >> k;

//сдвиг побочной диагонали на k элементов вниз
for (int i = 0; i < k; i++)
{
int tmp = arr[n - 1][0];

for (int j = n - 1, r = 0; j > 0; j--, r++)
{
arr[j][r] = arr[j - 1][r + 1];
}

arr[0][n - 1] = tmp;
}

//вывод нового массива
cout << "\nNew Array: \n";
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
{
cout << setw(5) << arr[j];
}
cout << endl;
}

return 0;
}там надо чтобы рандомно генерировалось, но все равно какие-то ошибки, мб ты пофиксишь?
Аноним 27/11/20 Птн 15:38:17 23413854285
>>234138476
#include <iostream>
#include <iomanip>
#include <stdlib.h>
#include <windows.h>
#include <ctime>

using namespace std;

int main()
{
const int n = 5;
int arr[n][n];
int m, k;

//ввод исходного массива

//вывод исходного массива
cout << "\nYour array: \n";
for (int i = 0; i < m; i++)
{
for (int j = 0; j < k; j++)
{
arr[j] = rand() % 90 + 10;
}
}
for (int i = 0; i < m; ++i)
{
for (int j = 0; j < k; j++)
{
cout << arr[j] << " ";
}
}


//ввод величины сдвига m
cout << "\nm=";
cin >> m;

//сдвиг главной диагонали на m элементов вверх
for (int i = 0; i < m; i++)
{
int tmp = arr[0][0];

for (int j = 0; j < n; j++)
{
arr[j][j] = arr[j + 1][j + 1];
}

arr[n - 1][n - 1] = tmp;
}

//вывод нового массива
cout << "\nNew Array: \n";
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
{
cout << setw(5) << arr[j];
}
cout << endl;
}

//ввод величины сдвига k
cout << "\nk=";
cin >> k;

//сдвиг побочной диагонали на k элементов вниз
for (int i = 0; i < k; i++)
{
int tmp = arr[n - 1][0];

for (int j = n - 1, r = 0; j > 0; j--, r++)
{
arr[j][r] = arr[j - 1][r + 1];
}

arr[0][n - 1] = tmp;
}

//вывод нового массива
cout << "\nNew Array: \n";
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
{
cout << setw(5) << arr[j];
}
cout << endl;
}

return 0;
}бля какого хуя
Аноним 27/11/20 Птн 15:38:39 23413857386
>>234134497 (OP)
У тебя row-major?
1. Сдвигаешь указатель на начало матрицы на строку влево и на 1 элемент вправо.
2. Фиксишь граничные эффекты.
Эффективность! Память! Грайндкор!
Аноним 27/11/20 Птн 15:38:40 23413857587
>>234138476
Я с блокнота хуярю так что врятли...
Попроси препода допилить. Хули он тапки пинает
Аноним 27/11/20 Птн 15:38:52 23413859388
>>234138302
Да нет, работает. Те же десятичные числа, просто их меньше и все. Ну и у них есть ещё дополнительные логические операции. А вообще забей на это. Как я уже выше писал, компилятор и так и эдак все оптимизирует, главное писать так, что бы потом любой прочитать мог и что б не стыдно было
Аноним 27/11/20 Птн 15:39:27 23413863189
>>234138455
но зачем тогда было байтить кресты?)
Аноним 27/11/20 Птн 15:40:01 23413866990
>>234138573
Стой стой стой.
Не пугай его областью производительности он еще в циклы и алгоритмы не смог.
Аноним 27/11/20 Птн 15:40:51 23413871691
>>234138542
Нах ты сюда говно своё постишь?
Аноним 27/11/20 Птн 15:41:54 23413878692
5454.png 96Кб, 1920x1080
1920x1080
Аноним 27/11/20 Птн 15:42:20 23413880893
Аноним 27/11/20 Птн 15:43:48 23413890794
>>234138716
можешь лучше пости код не можешь заткнись
Аноним 27/11/20 Птн 15:45:30 23413902295
Аноним 27/11/20 Птн 15:47:59 23413917396
>>234138593
Точно же. О-фи-геть. Прикольно. Можно считать, что я только что окончил четыре курса, если я это понял?
Аноним 27/11/20 Птн 15:48:07 23413918597
image 22Кб, 628x505
628x505
Аноним 27/11/20 Птн 15:50:45 23413937398
>>234139173
Ну, всему этому я научился на ютубе, лол.

Ну чё, задавайте ответы, хуле
Аноним 27/11/20 Птн 15:52:31 23413948399
>>234139373
Чему в универе четыре года учили, если вкратце? По темам, так сказать.
Аноним 27/11/20 Птн 15:54:34 234139627100
image.png 64Кб, 1161x662
1161x662
>>234137394
>>234137624
>>234137673
В общем, мне стало интересно, я решил сам проверить. Как ни странно, метод с дополнительной переменной оказался быстрее в максимальном упрощении. Много лет уже не писал код, критика не принимается.
Аноним 27/11/20 Птн 16:04:52 234140287101
>>234139627
Инициализируй с в каждом цикле, ради эксперимента.
Аноним 27/11/20 Птн 16:05:08 234140306102
>>234137518
Причем тут инглиш и аскии? Я спрашиваю, почему локаль - не гуд?
Аноним 27/11/20 Птн 16:11:56 234140725103
>>234139483
Ну, первый семестр профильного вообще нихуя не было. История, русский язык, всякая такая хуета.
Потом основы с++. Типы данных, стандартные библиотеки, потоки данных (консольные, файловые), и т.п. Потом учили Qt. Паралельно с этим учили Delphi реально классная тема. Замутить какую-нибудь оконную приколюху (жаль фото не осталось) или субдшку простенькую - в самый раз. Отдельно учили ООП. На третьем курсе институту пришел пиздос, и мы почти всю оставшуюся программу осваивали за пол года. На некоторые предметы по 3 пары приходилось. Тогда шла пыха, хтмл и прочее. Нихуя в такой кранч понять не возможно, и мы тупо весь семестр играли в "Жизнь На Арене" кастомка третьего варкрафта. Ещё сети были. Угорал в циско пакет тресйсере, бухой обжимал витуху и играл в Жизнь На Арене с преподом, лол. Проходили базы данных, ещё. Нормальные формы, sql и все такое. Ща скоро будем курач писать.

Так по теме больше особо не было. Были ОХУЕННЫЕ матан, философия и правоведение, из-за преподов. Столько стеба и троллинга с их стороны было, просто не счесть
боже, верни меня на мой второй курс
Аноним 27/11/20 Птн 16:12:49 234140786104
>>234139627
Компилил в дебаге или в релизе?
Аноним 27/11/20 Птн 16:14:03 234140859105
>>234134497 (OP)
В техноложке учишься или преподаешь?
Аноним 27/11/20 Птн 16:17:50 234141073106
image.png 59Кб, 1130x650
1130x650
>>234140287
Так чтоль? Ну интересные результаты. Понять я их пока что не могу.
Аноним 27/11/20 Птн 16:19:50 234141207107
>>234140786
В дебаге. Правда, я хз, что это вообще. Я не погромист нихуя. Просто мой вуз решил на 1 курсе, что все инженеры должны освоить основы алгоритмов и С++.
Аноним 27/11/20 Птн 16:20:56 234141277108
>>234141073
В i добавь пару нулей. Тысячные доли секунды - такой себе разброс
Аноним 27/11/20 Птн 16:23:01 234141404109
>>234141207
Если коротко: дебаг медленнее релиза, и вообще там все по-другому. Ставь на релиз и прогоняй тест заново
Аноним 27/11/20 Птн 16:25:53 234141579110
>>234141073
Бля, я обосрался, инициализируй с не в каждом цикле, а в тех, где она используется.
Аноним 27/11/20 Птн 16:29:11 234141757111
image.png 22Кб, 385x308
385x308
>>234141277
Да это вообще прикол какой-то. Я один ноль добавил, и сделал по 5 замеров для большей точности. И опять результаты изменились.
>>234141404
В релизе всё мгновенно выполняется и нули выдаёт. Хз.

Ладно, чё мы тут хуйнёй страдаем за бесплатно.
Аноним 27/11/20 Птн 16:30:25 234141837112
>>234141757
За дебаг и релиз я поясню, но попозже, ща я помоюсь

оставайтесь на связи
Аноним 27/11/20 Птн 16:31:51 234141925113
image.png 25Кб, 420x305
420x305
>>234141579
Специально для тебя перезамерил без инициализации переменной с в последних двух циклах. То есть она только в первом осталась, где используется.
Аноним 27/11/20 Птн 16:34:33 234142086114
>>234141837
Да не надо, спс, правда не стóит. Было бы интересно - я бы давно уже знал это.

Мне надо одеваться и идти. Я сегодня в VR клуб на собеседование иду.
Аноним 27/11/20 Птн 16:37:37 234142274115
>>234142086
Да просто так у тебя данные ошибочные. И тест твой попал в молоко.

Удачи на собеседовании!
Аноним 27/11/20 Птн 16:44:41 234142742116
Чё, все? Пизда треду?
Аноним 27/11/20 Птн 16:48:16 234142992117
Пиздец, вы реально не можете задачу ОПа решить? Сто постов высрали какой-то хуйни, а нормального ответа так до сих пор и нет. На словах все сеньоры 500кк/нс, а на деле все слились, как куски говна.
Аноним 27/11/20 Птн 16:50:59 234143156118
>>234142992
Да тут корме полутора анонов никто и не решал, лол. А вообще пускай прокачивает математическое мышление, если хочет нормально прогать.
Ну или веб-макакай что в принципе ничего плохого
Аноним 27/11/20 Птн 16:54:01 234143355119
Решается одним вложенным циклом:
for (int i = 0; i < N; ++i) {
----int carry = a[0];
----for (int j = N - 1; j >= 1; --j) {
--------a[(j+1)%N][(i+j+1)%N] = a[j][(i+j)%N];
----}
----a[1][(i+1)%N] = carry;
}
Полный код: https://godbolt.org/z/zqfz5q Пять минут ушло.
>>234142992-кун
Аноним 27/11/20 Птн 16:56:49 234143530120
>>234143355
Not bad. Правда сомневаюсь что ОП ещё тут. Нихуево придумал с отступами, кстати.
Аноним 27/11/20 Птн 16:58:58 234143647121
>>234143355
Не то я криво скопипастил, не то макака макабу шатает, должно быть int carry = a[0]; смотри полный сорец по ссылке, в общем.
Аноним 27/11/20 Птн 16:59:33 234143686122
>>234143647
А, это все-таки макака корежит код. Ну и хуй с ним, по ссылке все есть.
Аноним 27/11/20 Птн 17:14:28 234144611123
>>234143355
Спасибо, анонче. А можно пяснительную бригаду?
Аноним 27/11/20 Птн 17:23:02 234145220124
>>234137518
Так ты дебил прост, я тоже не люблю возиться с поддержкой национальных языков, но ничего монструозного в этом нет
>>234134864
Он дебил прост
Аноним 27/11/20 Птн 17:23:57 234145281125
>>234144611
Ну по >>234136757 очевидно, что элемент a[j] встает на место a[(i+1)%N][(j+1)%N]. Остальное уже как сделать так, чтобы элементы не затирали друг друга при перемещении. Я для этого сдвигаю их задом наперед, таким образом достаточно предварительно запомнить первый элемент, чтобы по окончанию водрузить его на положенное место. Ну и не придумал ничего лучшего, чем обрабатывать по диагоналям, а так может и получше можно что придумать, чтобы на кэш-промахах не всосать на больших массивах, но мне лень.
Аноним 27/11/20 Птн 17:25:28 234145389126
>>234145281
Блядь, ебаная макаба. Рака яиц тебе, хач ебаный.
> элемент (i, j) встает на место ((i+1)%N, (j+1)%N)
Аноним 27/11/20 Птн 17:26:32 234145468127
bump
Аноним 27/11/20 Птн 17:38:48 234146282128
Аноним 27/11/20 Птн 17:40:20 234146395129
Аноним 27/11/20 Птн 17:41:07 234146441130
Блять, декремент к обоим сторонам массива, за реализацией хуячь в любой учебник, там всё есть. Сука, потом они хотят идти работать на хорошие должности, рот ебал
Аноним 27/11/20 Птн 17:44:55 234146718131
>>234146441
Да чё бугуртить-то так? Ну промахнулись с профессией, спасибо такому лютому форсу про 300кк/нсек, ну бывает. Один хуй если ты хороший специалист, то с работой проблем не будет
Настройки X
Ответить в тред X
15000
Макс объем: 20Mб, макс кол-во файлов: 4
Кликни/брось файл/ctrl-v
X
Ваш шидевор X
Стикеры X
Избранное / Топ тредов