Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Bitnami MediaWiki
Search
Search
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
3793 - Cort
Page
Discussion
English
Read
Edit
Edit source
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
Edit source
View history
General
What links here
Related changes
Special pages
Page information
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
O curte dreptunghiulară de lungime <code>N</code> și lățime <code>M</code> (vom numi <code>N</code> linii și <code>M</code> coloane) este pavată cu dale pătrate de dimensiune <code>1</code>. Dalele au două culori, sunt albe sau negre (vom codifica dalele albe cu <code>0</code> și dalele negre cu <code>1</code>). Dalele negre sunt fabricate dintr-un material mult mai rezistent decât dalele albe, iar Ionel ar vrea sa monteze un cort de suprafață maximă sub care să fie doar dale negre. El știe de asemenea că există doar corturi dreptunghiulare și pătrate, de orice dimensiune. Din motive tehnice, Ionel poate să facă doar următoarele operații cu dalele din curte: * să schimbe între ele oricâte dale de pe aceeși linie; * să schimbe de oricâte ori dorește o linie întreagă cu altă linie tot întreagă; = Cerința = Scrieți un program care rezolvă următoarele două cerințe: 1. Afișează numărul maxim de dale negre care s-ar putea obține pe o coloană după rearanjare; 2. Afișează aria maximă a cortului ce poate fi amplasat doar pe dale negre. = Date de intrare = Fișierul de intrare <code>cort.in</code> conține pe prima linie un număr natural <code>C</code> reprezentând cerința din problemă care trebuie rezolvată (<code>1</code> sau <code>2</code>). A doua linie din fișier conține două numere naturale <code>N</code> și <code>M</code>, reprezentând lungimea, respectiv lățimea curții. Pe fiecare dintre următoarele <code>N</code> linii se găsesc câte <code>M</code> valori de <code>0</code> sau <code>1</code>, acestea indicând culoarea dalei de pe acea poziție. = Date de ieșire = Dacă <code>C = 1</code>, fișierul de ieșire <code>cort.out</code> va conține un număr reprezentând răspunsul la cerința <code>1</code>. Dacă <code>C = 2</code>, fișierul de ieșire <code>cort.out</code> va conține un număr reprezentând răspunsul la cerința <code>2</code>. = Restricții și precizări = * <code>1 ≤ N ≤ M ≤ 1000</code> * Există cel puțin o dală neagra = Exemplul 1: = <code>cort.in</code> 1 6 5 1 0 1 0 1 1 1 1 1 0 1 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 <code>cort.out</code> 4 === Explicație === Pentru primul exemplu cerința este <code>1</code>. Se pot rearanja sub urmatoarea formă: <code>1 1 1 0 0</code> <code>1 1 1 1 0</code> <code>1 0 0 0 0</code> <code>1 1 1 0 0</code> <code>0 0 0 0 0</code> <code>0 0 0 0 0</code> Pe coloana <code>1</code> există <code>4</code> dale negre. == Încărcare soluție == === Lipește codul aici === <syntaxhighlight lang="python" line="1"> import sys C = int(sys.stdin.readline()) if C == 1: N, M = map(int, sys.stdin.readline().split()) nr = 0 for i in range(N): ok = 0 for j in range(M): x = int(sys.stdin.readline()) if x == 1: ok = 1 if ok == 1: nr += 1 sys.stdout.write(str(nr)) if C == 2: N, M = map(int, sys.stdin.readline().split()) v = [] for i in range(N): k = 0 for j in range(M): x = int(sys.stdin.readline()) k += x v.append(k) v.sort() maxim = 0 for i in range(len(v)): if v[i] * (N - i + 1) > maxim: maxim = v[i] * (N - i + 1) sys.stdout.write(str(maxim)) </syntaxhighlight>
Summary:
Please note that all contributions to Bitnami MediaWiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Bitnami MediaWiki:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Toggle limited content width