Skip to content

Instantly share code, notes, and snippets.

1. users. Таблица содержит информацию о пользователях
- user_id (integer). Уникальный идентификатор пользователя
- name (char). Имя пользователя
- email (char). Email пользователя
2. statuses. Таблица содержит информацию о статусах задач.
const getFeatureCheckboxs = (feature) => {
const { offers, type } = feature;
return offers.reduce((res, offer, i) => {
return res + `
<input id="event-offer-${type}-${i}" type="checkbox" name="event-offer-${type}">
<label for="event-offer-${type}-${i}">${offer.title}</label>
`;
}, '')
};
import Chart from "chart.js";
import ChartDataLabels from "chartjs-plugin-datalabels";
const moneyCtx = document.querySelector('.money-chart');
const moneyChart = new Chart(moneyCtx, {
plugins: [ChartDataLabels],
type: `horizontalBar`,
data: {
labels: [`✈️FLY`, `🏨 STAY`, `🚕 TAXI`, `🏛️ LOOK`, `🍴 EAT`, `🚗 DRIVE`, `🛳️ SAIL`, `🚂 TRAIN`, `🚌 BUS`],
@MrMeison
MrMeison / leaflet.js
Created May 21, 2019 10:27
leaflet mock
const leaflet = jest.mock(`leaflet`);
const tileLayer = {
addTo() {
return {};
}
};
const marker = {
addTo() {
/**
* Сначала сравниваем длину строки и определяем строки с максимальной длиной и складываем
* в отдельный массив.
* После этого классическим образом сортируем строки и получаем максимальный элемент.
* Подходит для любого колчиства параметров
*
* @param args строки для сравнения
*/
const solve = (...args) => {
if (!args.length) return;
/**
* Суть решения: Сначала пробигаемся с начала матрица до конца заполняя левое и верхнее направлевление
* для выйграша. Для этого сравниваем текущее и предыдущее значения по этому направлению и проверяем было ли
* предыдущее значение выиграшным по этому направлению. Если да, то проверять дальше бессмысленно, то что они
* в любом случае будут меньше текущего значения, иначе предверяем следующее число в том же направлении.
*
* После того как закончим прверять все верхнии и левые значения переходим к нижних правым. Для этого делаем тоже самое
* но в обратном направлении. Заодно и складываем сумму.
*/
(function() {
var currentFilter = {
roomCount: 'any',
type: 'any',
price: '0'
}; // <-- объект который будет храить текущее состояние всех фильтров
var filterByRooms = function(offer, roomCount) {
if (roomCount === 'any') {
return true; // <-- показываем элемент если количество комнат не задано
# Uses python3
# собираем граф из массива
def build_graph(arr, fin):
graph = {}
for node in arr:
if not graph.get(node[0]):
graph[node[0]] = {}
graph[node[0]][node[1]] = node[2] / 100
if not graph.get(node[1]):
def step(mins, n):
if n == 1:
return 0
if (mins[n] != -1):
return mins[n]
result = 1 + step(mins, n-1)
if (n % 2 == 0):
result = min(result, 1 + step(mins, n // 2))
if (n % 3 == 0):
def get_major(items):
map = {}
major_count = round(len(items) / 2)
for item in items:
if map.get(item):
if map[item] + 1 >= major_count:
return item
map[item] = map[item] + 1
else:
map[item] = 1