امن برياني
90 subscribers
372 photos
56 videos
11 files
109 links
What I cannot create, I do not understand
Download Telegram
امن برياني
ASS code ep1.cpp
صنع يدويا وبكل فخر
99% جكاير وصفنات
1% برمجة
0% ذكاء اصطناعي
❤2💋1
امن برياني
ASS code ep1.cpp
بالنسبة للحل الثاني اللي اجة ببالي, طلع عمليا ميفرق هواي من ناحية السرعة لان الكومبايلر ديسوي تحسينات تخلي الكودين بنفس السرعة تقريبا
بس على العموم الفكرة جانت بدل ما اخذ القطر الاساسي واخزنه بمصفوفة, وراها اخذ القطر الثانوي واخزنه بغير مصفوفة وراها اسوي الاستبدال
كلت اخليه يسوي loop على القطر الرئيسي وتلقائيا يحسب مكان القطر الثانوي للصف الحالي ويبدل العناصر بس بعد ما سويت مقارنة بالسرعة طلع الفرق تقريبا لاشيء ومرات الاولى اصلا تطلع اسرع
هذا الكود بكل الاحوال اذا مهتم:
  // go only though the primary diagonal,
// we can find the secondary diagonal via s-i
for (int i = 0; i < s; i++) {
int z = s - 1 - i;
// swap the primary and secondary diagonal elements from the current row,
// thanks to compiler optimizations, this method is actually faster than
// using XOR swapping, and it's better as well since the center element
// will not be zeroed due to (A XOR A = 0)
int temp = a[i][i];
a[i][i] = a[i][z];
a[i][z] = temp;
}
once again, 0% AI
هسة انام بعد ما ارتاحيت لان راست طلعت اسرع
كلا للكبسلة نعم لاجازة السوق
😁3
هذا شلون ينحل راح اتخبل
يتم neetcode
🥰1
another one bites the dust
شوية دخت بيها بس تمت
ماعرف ليش شي بهالبساطة خلاني اصفن هلكد
اني كلت ما راح انشر حلول بس هذا الحل هلكد ما حلو لازم انشره
(هذا الخرط كله عبارة عن سطر واحد براست بس الفورماتر مقسمه على اكثر من سطر)
100% time and space
fn eratosthenes_sieve(n: usize) -> Vec<usize> {
(2..=n.isqrt())
.fold(vec![true; n + 1], |mut numbers, current_number| {
if numbers[current_number] {
(current_number * current_number..=n)
.step_by(current_number)
.for_each(|i| numbers[i] = false);
}
numbers
})
.into_iter()
.enumerate()
.skip(2)
.filter_map(|(index, is_prime)| is_prime.then_some(index))
.collect()
}

معقولة الfunctional programming هي احسن شي🤔