## Hw2 | |

Dear students, HW2 is now available. Please notice that we will add two new problems every week (10 in total), so try to balance the load throughout the period of the assignment. Please notice that the submission is in teams. Try to use the long time given to think together about the problems. Regards, Course staff |

עדכון אחרון ב- 20/5/2020, 00:43:46 Last updated on 20/5/2020, 00:43:46 Последняя модификация 20/5/2020, 00:43:46 تمت الحتلنة الأخيرة ب- 20/5/2020, 00:43:46 |

## HW1 - submission date | |

Dear students, The deadline for HW1 is the 26/05. You can now submit it on the website. Regards, Course staff |

פורסם ב- 19/5/2020, 13:58:12 Created on 19/5/2020, 13:58:12 Создано 19/5/2020, 13:58:12 تم النشر ب- 19/5/2020, 13:58:12 |

## vjudge group accounts | |

Dear students, Please make a group account on vjudge for tomorrow class, we will add your accounts during the class. Regards, Course staff |

פורסם ב- 12/5/2020, 04:21:01 Created on 12/5/2020, 04:21:01 Создано 12/5/2020, 04:21:01 تم النشر ب- 12/5/2020, 04:21:01 |

## MillerProblem with the Miller-Rabin algorithm | |

Dear students, There was a bug with the Miller-Rabin (MR) algorithm, thus we will consider late submissions of problem E from lesson 4 as a full submission. The submission deadline was extended to Sunday 10/05 16:30. You can now find a working version under the course material. The problem was interesting, so here is a brief description: As part of the MR algorithm, in order to check if a number n is a prime, another number a is raised to a certain power modulo n using the fast exponentiation algorithm we saw in class, since it is modulo n there shouldn't be any overflow problems. However, in the algorithm we compute the square of a number, and when computing x*x an overflow occurred. How to fix such a problem? We want to compute x*x mod n where x*x will cause an overflow, we can use the exact same method as fast exponentiation, but using addition instead of multiplication, and applying the mod opperation after each step. For example, if we want to compute 13*13 mod 10, we can write it as (8+4+1)*13, we can compute it using the follwoing steps: 1*13 mod 10 = 3 2*13 mod 10 = 2*3 mod 10 = 6 4*13 mod 10 = 2*6 mod 10 = 2 8*13 mod 10 = 2*2 mod 10 = 4 thus, 13*13 mod 10 = 3+2+4 = 9 Regards, Course staff |

פורסם ב- 5/5/2020, 14:40:52 Created on 5/5/2020, 14:40:52 Создано 5/5/2020, 14:40:52 تم النشر ب- 5/5/2020, 14:40:52 |

## HW1 undated | |

Dear students, HW1 is now updated with 2 new questions. Also, there was a problem with the late submission of the last class problems, it should now be open. Regards, Course staff |

פורסם ב- 14/4/2020, 05:15:23 Created on 14/4/2020, 05:15:23 Создано 14/4/2020, 05:15:23 تم النشر ب- 14/4/2020, 05:15:23 |

## Today class | |

Dear students, The competition today will be in singles. We will begin team competitions after Passover. Regards, Course staff |

פורסם ב- 7/4/2020, 13:11:53 Created on 7/4/2020, 13:11:53 Создано 7/4/2020, 13:11:53 تم النشر ب- 7/4/2020, 13:11:53 |

## Team registration | |

Dear students, Please fill the team registration form even if are not part of a team. We will help you to form a team once you'll fill it. Regards, Course staff |

פורסם ב- 6/4/2020, 13:20:21 Created on 6/4/2020, 13:20:21 Создано 6/4/2020, 13:20:21 تم النشر ب- 6/4/2020, 13:20:21 |

## Announcements | |

Dear students,Team registration:Please fill in the following form: https://forms.gle/eCvmadT72RG8oggg9 HW1:HW1 is now available. Please notice that we will add two new problems every week (10 in total), so try to balance the load throughout the period of the assignment. Last class late submission:The due date of the late submission was accidentally the 07/03 instead of the 07/04. It is now fixed and you can submit to it. Regards, Course staff |

עדכון אחרון ב- 1/4/2020, 19:43:46 Last updated on 1/4/2020, 19:43:46 Последняя модификация 1/4/2020, 19:43:46 تمت الحتلنة الأخيرة ب- 1/4/2020, 19:43:46 |

## hw0 - Stuck problem | |

Dear students, We have added another version of the Shattered cake problem of hw0 in case the first one is stuck with a status of "in judge queue". You do not need to solve both versions, any one of those is enough. Regards, Course staff |

פורסם ב- 29/3/2020, 18:33:38 Created on 29/3/2020, 18:33:38 Создано 29/3/2020, 18:33:38 تم النشر ب- 29/3/2020, 18:33:38 |

## A few announcements | |

Dear students, HW0: - You can now submit your solutions in the webcourse. - There was a problem with one of the problems, you can now find a working version of the same problem in the vjudge. Next Lesson: - We have contacted the admins of the online judge which was slow during the last lesson, they are aware of this problem, and they claim to solve it. We hope that this problem won't occur, and we have some backup solutions in case that it will. Submissions: We remind you to submit the problems of the last lesson in the webcourse. Registration: We sent the final participants list to the secretariats, if you do not intend to attend the course please contact the staff ASAP. Regards, Course staff |

פורסם ב- 29/3/2020, 13:33:39 Created on 29/3/2020, 13:33:39 Создано 29/3/2020, 13:33:39 تم النشر ب- 29/3/2020, 13:33:39 |

## First session | |

Dear students, The first session of the course will be given using zoom, you can connect through the following link: https://technion.zoom.us/j/600395129 Also, the slides of the first lectures have been slightly modified, you can find the new slides in the course material section. Regards, Course staff |

פורסם ב- 24/3/2020, 13:19:35 Created on 24/3/2020, 13:19:35 Создано 24/3/2020, 13:19:35 تم النشر ب- 24/3/2020, 13:19:35 |

## vJudge update | |

Dear students, First, a clarification, only students who were on the waiting list got a message of acceptance. Some students didn't recieve the previous mail, if you didn't please refer to the previous mail and go over the instructions in there. About the vjudge system: Students who filled the vJudge username form are now part of the course group and can participate in the introduction competition. Regards, Course staff |

עדכון אחרון ב- 22/3/2020, 22:21:18 Last updated on 22/3/2020, 22:21:18 Последняя модификация 22/3/2020, 22:21:18 تمت الحتلنة الأخيرة ب- 22/3/2020, 22:21:18 |

## Starting Workshop in Competitive Programming! | |

All registered students received a separate confirmation email just now. There was a very high demand for the workshop this year, and unfortunately not all students who asked to take the class had the chance to do so. Due to the special circumstences the workshop this semester will be given online, we are still working on all the details, and we will give all the details in the first meeting which will take place on Tuesday (24/03/2020) at 16:30. In this meeting we will introduce competitive programming and the workshop, solve some questions together, and have a first warm-up competition in singles. What do you need to to before the class: - Please open an account on https://vjudge.net/ . Try to choose an indicative username (or set a nickname), as it will show on the scoreboard in class. - Fill the following form: https://forms.gle/hAhRVfF3JSEt7aix7 - We will add you to the course group, you will be able to see it under the "Group" section in vjudge. - To see that you know how to work with vjudge, you can join the competition 'Introduction contest' inside the group and solve the (easy) problem there. Note that attending this lesson is mandatory for taking the workshop. If you have a problem with attending, please let us know in advance. May we all have a pleasant and fruitful semester! The course staff. |

עדכון אחרון ב- 19/3/2020, 03:13:01 Last updated on 19/3/2020, 03:13:01 Последняя модификация 19/3/2020, 03:13:01 تمت الحتلنة الأخيرة ب- 19/3/2020, 03:13:01 |

## Registration | |

Dear students, In this class we aim to learn and experience fast and efficient problem solving in code using core computer science topics you learned. This class is unique in structure. We will meet every week on Tuesdays at 16:30-19:30. In each meeting we will first learn algorithms, principles and tips, and then gain experience of problem solving in teams: understanding problems, designing efficient solutions and implementing them. To register please fill in the form (https://forms.gle/mwAFL47dxMZET41v5) until February 25th. Note that a prerequisite for this class is Algorithms 1 (234247), and we will use material taught in Algorithms and in its prerequisites (e.g., Data Structures) in class. Do not hesitate to contact us if you have questions (but please read the information sheet and the FAQ first). We wish you a fruitful and enjoyable semester, The course staff |

פורסם ב- 7/1/2020, 12:08:09 Created on 7/1/2020, 12:08:09 Создано 7/1/2020, 12:08:09 تم النشر ب- 7/1/2020, 12:08:09 |