Saturday, January 30, 2021

Попытка решить №26,27 демо-версии КЕГЭ по информатике 2021

UPDATE 01/02/2021

Решение Джобса верно в контексте вызова f.readline().split()  я ошибся при копировании его кода. Однако, ошибка в коде Джобса всеже есть , хотя вполне тривиальная. Нарушен приоритет операций "-" и "%" :   

if p1 - p2%3 != 0 and p1 - p2 < dx:  

Корректировка :   if (p1-p2)%3 !=0 and p1 - p2 < dx:

Очевидно, что выполнение кода со скриншота ниже верного результата дать в принципе не может. Предложен другой вариант кода, обходящий вызов f.readline().split() и корректировкой описанной выше. Мое решение мне нравится, но не более того

END UPDATE 

Следую https://www.youtube.com/watch?v=zGYqPsUB-S4&feature=emb_logo



Среда Python 3.9.1 Linux Fedora 33 Server

Копирую код из видео


































Пишем другой код

Исходные данные
Выполняем


Все тоже касается задачи 26
Меняем код , который блокирует Python 3.9.1





Выполняем











Saturday, September 12, 2020

Setting up Sqlite3 Python embedded database and Sqlitebrowser on CentOS 8.2

First instatll "Development Tools", rebuild Python 3.8.5
after installation sqlite-devel. Afterwards build sqlitebrowser from source rather then install vi snap, just a couple qt5-devel packages would have to be installed for successful build on CentOS 8.2.

$ sudo dnf groupinstall "Development Tools" -y
$ sudo dnf install sqlite-devel

Rebuild Python

$cd ; $ cd ./Python-3.8.5
$ ./configure —enable-optimizations
$ sudo make altinstall

Prepare to build sqlitebrowser which wouldn't
have any issues with Qt vs the one provided via snap

$ sudo dnf install qt5-devel qwt-qt5-devel -y



Build sqlitebrowser

$ git clone https://github.com/sqlitebrowser/sqlitebrowser
$ cd sqlitebrowser
$ cmake -Wno-dev .
$ make
$ sudo make install



Make sure

[boris@Server82 ~]$ python3.8
Python 3.8.5 (default, Sep 11 2020, 12:09:30)
[GCC 8.3.1 20191121 (Red Hat 8.3.1-5)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import sqlite3
>>>
Now follow for instance https://pymotw.com/2/sqlite3/ and see
basic DDL && DML operations work with no problems via Python API .
However, Encrypting would require Python 2.7


                                                

Thursday, September 10, 2020

Setting up Python 3.8.5 on Linux && Getting LibreOffice 7.0 for free

$  wget https://www.python.org/ftp/python/3.8.5/Python-3.8.5.tgz
$   sudo dnf groupinstall "Development Tools" -y
$   tar xvf Python-3.8.5.tgz
$  cd  ./Python-3.8.5
$    ./configure --enable-optimizations
$  sudo make altinstall

[boris@Server82 ~]$ python3.8 --version
Python 3.8.5
[boris@Server82 ~]$ 

Just for fun solve #25 from USE Demo 2021  (optimal code belongs to Eugene Dzhobs)
#25



Would you like to install sqlite3 Python embedded database on CentOS 8.2
$ sudo dnf install sqlite-devel
$  cd  ./Python-3.8.5
$    ./configure --enable-optimizations
$  sudo make altinstall

Wednesday, June 24, 2020

Стрим 70 2020 Инфоматика БУ и решение задачи №18


    https://www.youtube.com/watch?v=FAobNtrCRGI

   1 час 35 мин

 Эквивалентно
         (A*(x-2) >= y) v (((x-10)*(20-x) < y)   True
Найти наименьшее А  при котором облась ложности второй скобки, то есть (((x-10)*(20-x) >= y) находится в полуплоскости  (A*(x-2) >= y) 

Monday, June 1, 2020

Решение задачи #T2414 Яндекс Репетитор Методом Отображений 10.2019

Оригинальная система


Эквивалентная система

(x1≡x2)⊕(x3≡x4)=1
(x3≡x4)⊕(x5≡x6)=1
(x5≡x6)⊕(x7≡x8)=1



Рассмотрим ее клон :-
(x1≡x2)⊕(x3≡x4)=1
(x3≡x4)⊕(x5≡x6)=1
(x5≡x6)⊕(x7≡x8)=1
(x7≡x8)=>(x1≡x2)=1
Как нам порвать закольцованность и найти число решений
клонированной системы ?


Sunday, May 31, 2020

Решение одгой системы уравнений в булевских переменных Метод Отображений и техника таблиц перекрестных ссылок

Толчком для демонстрации гибкости МО в сочетании техникой перекрестных ссылок для двух или трехместных предикатов образующих саму систему послужили некоторые системы из числа последних, пополнивших ege23.doc. Здесь совершенно все равно какая логическая операция связывает предикаты уравнения . Мощности попарного пересечения множеств истинности и ложности каждого из двух предикатов, образуюших систему однозначно определяют саму таблицу перекрестных ссылок. Количество переменных от  которых зависит предикат ( от 2 до 4 ) также не приводит к необходимости писать код для алгоритма МО.

Оригинальная система

((x1=>x2)=>x3) v ((x4≡x5)≡x6)≡1
((x4=>x5)=>x6) v ((x7≡x8)≡x9)≡1
((x7=>x8)=>x9) v ((x10≡x11)≡x12)≡1

Генерация матрицы



    Контроль



  

Решение задачи #T4834 Яндекс Репетитор Методом Отображений 10.2019

Оригинальная система



Эквивалентная система

(x1=>y1)^(x1⊕x2)=1
(x2=>y2)^(x2⊕x3)=1
(x3=>y3)^(x3⊕x4)=1
. . . . . .
(x8=>y8)^(x8⊕x9)=1
x9=>y9=1

Генерация диаграммы