• Предмет: Алгебра
  • Автор: bahunya21
  • Вопрос задан 2 года назад

A. Матрицы
ограничение по времени на тест1 секунда
ограничение по памяти на тест256 мегабайт
вводстандартный ввод
выводстандартный вывод
Вам дана матрица размера N×M, состоящая из целых положительных чисел, а также целое число K. Назовем подматрицу хорошей, если она является квадратом и сумма этой подматрицы не больше K. Посчитайте количество хороших подматриц.

Подматрицей называется такая матрица, которую можно получить из исходной, если удалить из нее несколько(возможно ноль) столбцов с левого и правого края, а также несколько(возможно ноль) строк с верхнего и нижнего края. При этом подматрица не должна быть пустой.

Входные данные
В первой строке заданы 3 целых числа N, M, K — размеры матрицы. (1≤N,M≤1500, 0≤K≤109)

В следующих N строках содержится по M целых положительных чисел — содержимое матрицы (числа по значению от 1 до 1000).

Выходные данные
Выведите одно число — количество подходящих подматриц.

Система оценки
Данная задача содержит 6 подзадач, в которых выполняются следующие ограничения:

Тесты из условия. Оценивается в 0 баллов.
N,M≤2. Оценивается в 15 баллов.
N,M≤100. Оценивается в 17 баллов.
N,M≤500. Оценивается в 24 балла.
N,M≤1500 и матрица состоит только из единичек. Оценивается в 15 баллов.
Исходные ограничения. Оценивается в 29 баллов.
входные данные
3 3 12
1 2 3
5 2 5
3 2 4
Выходные данные
12
входные данные
6 6 30
4 4 4 1 1 1
2 5 5 3 2 3
3 2 2 4 1 3
1 1 4 4 4 5
1 3 3 4 5 5
2 5 5 4 3 4
выходные данные
71


shahmatov2805: ну помогите, не трудно же
Frazy0: блин думал кто то уже сделал
bilboi: долбаебы сами решайте
Frazy0: Ладно.
shahmatov2805: Боже, какой конченый
shahmatov2805: А зачем ты тогда суда зашел мне интересно ?
Frazy0: получается вводных данных только 3, а остальные случайно?
Frazy0: тут есть Думан?
Frazy0: у меня есть решение но нету последнего вывода
Frazy0: сложения всех чисел

Ответы

Ответ дал: bilboi
3

#include <bits/stdc++.h>

#define no cout << "NO" << endl

#define yes cout << "YES" << endl

#define fast ios_base::sync_with_stdio(0);cin.tie(NULL);cout.tie(NULL)

typedef long long ll;

const int MAXN = 2e5 + 5;

const ll mod = 1e9 + 7;

 

using namespace std;

int n, m, k;

int cnt = 0, v, b[MAXN], ans = 0, sum;

int main() {

   fast;

cout << "im retarded";

}


alensandybaev: xD
Frazy0: мб так?

from random import random
M = int(input())
N = int(input())
a = []
for i in range(N):
b = []
for j in range(M):
b.append(int(random()*11))
print("%3d" % b[j], end='')
a.append(b)
print(' |', sum(b))

for i in range(M):
print(" --", end='')
print()

for i in range(M):
s = 0
for j in range(N):
s += a[j][i]
print("%3d" % s, end='')
print()
tiripa5164: на каком языке написан
Frazy0: ответ bilboi наверное на c++
Frazy0: мой на python
Ответ дал: Frazy0
1

from random import random

M = 3

N = 3

a = []

w = 0

for i in range(N):

   b = []

   for j in range(M):

       b.append(int(random()*11))

       print("%3d" % b[j], end='')

   w = w + sum(b)

   a.append(b)

   print('   |', sum(b))

 

for i in range(M):

   print(" --", end='')

print()

 

for i in range(M):

   s = 0

   for j in range(N):

       s += a[j][i]

   print("%3d" % s, end='')

print()

print('Выходные данные: ', w)

Вас заинтересует