<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.universitas.ro/index.php?action=history&amp;feed=atom&amp;title=2707_-_Matad</id>
	<title>2707 - Matad - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.universitas.ro/index.php?action=history&amp;feed=atom&amp;title=2707_-_Matad"/>
	<link rel="alternate" type="text/html" href="https://wiki.universitas.ro/index.php?title=2707_-_Matad&amp;action=history"/>
	<updated>2026-05-02T07:53:19Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://wiki.universitas.ro/index.php?title=2707_-_Matad&amp;diff=7666&amp;oldid=prev</id>
		<title>Tita Marian: Pagină nouă: == Cerinţa == Dându-se o matrice de numere întregi cu &#039;&#039;&#039;dimensiune&#039;&#039;&#039; linii și &#039;&#039;&#039;dimensiune&#039;&#039;&#039; coloane, să se verifice dacă este sau nu matrice de adiacență asociată unui graf neorientat. == Date de intrare == Programul citește de la tastatură numărul &#039;&#039;&#039;dimensiune&#039;&#039;&#039;, iar apoi se citesc de pe &#039;&#039;&#039;dimensiune&#039;&#039;&#039; linii câte &#039;&#039;&#039;dimensiune&#039;&#039;&#039; numere naturale, separate prin spații, reprezentând elementele matricei. == Date de ieșire ==  Pe ecran se va afișa mesaj...</title>
		<link rel="alternate" type="text/html" href="https://wiki.universitas.ro/index.php?title=2707_-_Matad&amp;diff=7666&amp;oldid=prev"/>
		<updated>2023-12-06T16:59:01Z</updated>

		<summary type="html">&lt;p&gt;Pagină nouă: == Cerinţa == Dându-se o matrice de numere întregi cu &amp;#039;&amp;#039;&amp;#039;dimensiune&amp;#039;&amp;#039;&amp;#039; linii și &amp;#039;&amp;#039;&amp;#039;dimensiune&amp;#039;&amp;#039;&amp;#039; coloane, să se verifice dacă este sau nu matrice de adiacență asociată unui graf neorientat. == Date de intrare == Programul citește de la tastatură numărul &amp;#039;&amp;#039;&amp;#039;dimensiune&amp;#039;&amp;#039;&amp;#039;, iar apoi se citesc de pe &amp;#039;&amp;#039;&amp;#039;dimensiune&amp;#039;&amp;#039;&amp;#039; linii câte &amp;#039;&amp;#039;&amp;#039;dimensiune&amp;#039;&amp;#039;&amp;#039; numere naturale, separate prin spații, reprezentând elementele matricei. == Date de ieșire ==  Pe ecran se va afișa mesaj...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Cerinţa ==&lt;br /&gt;
Dându-se o matrice de numere întregi cu &amp;#039;&amp;#039;&amp;#039;dimensiune&amp;#039;&amp;#039;&amp;#039; linii și &amp;#039;&amp;#039;&amp;#039;dimensiune&amp;#039;&amp;#039;&amp;#039; coloane, să se verifice dacă este sau nu matrice de adiacență asociată unui graf neorientat.&lt;br /&gt;
== Date de intrare ==&lt;br /&gt;
Programul citește de la tastatură numărul &amp;#039;&amp;#039;&amp;#039;dimensiune&amp;#039;&amp;#039;&amp;#039;, iar apoi se citesc de pe &amp;#039;&amp;#039;&amp;#039;dimensiune&amp;#039;&amp;#039;&amp;#039; linii câte &amp;#039;&amp;#039;&amp;#039;dimensiune&amp;#039;&amp;#039;&amp;#039; numere naturale, separate prin spații, reprezentând elementele matricei.&lt;br /&gt;
== Date de ieșire == &lt;br /&gt;
Pe ecran se va afișa mesajul: &amp;#039;&amp;#039;&amp;#039;&amp;quot;Datele de intrare respectă cerințele impuse&amp;quot;&amp;#039;&amp;#039;&amp;#039; daca se respecta datele de intrare iar in caz contrar se afiseaza mesajul &amp;#039;&amp;#039;&amp;#039;“Datele de intrare nu respectă cerințele impuse”&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
Programul va afișa pe ecran valoarea &amp;#039;&amp;#039;&amp;#039;1&amp;#039;&amp;#039;&amp;#039; dacă matricea este de adiacență, sau &amp;#039;&amp;#039;&amp;#039;0&amp;#039;&amp;#039;&amp;#039; dacă nu este matrice de adiacență.&lt;br /&gt;
== Restricţii şi precizări ==&lt;br /&gt;
* 3 &amp;amp;les; &amp;#039;&amp;#039;&amp;#039;dimensiune&amp;#039;&amp;#039;&amp;#039; &amp;amp;les; 100 &lt;br /&gt;
== Exemplul 1 ==&lt;br /&gt;
Intrare&lt;br /&gt;
 4&lt;br /&gt;
 0 1 1 0&lt;br /&gt;
 1 0 0 0&lt;br /&gt;
 1 0 0 1&lt;br /&gt;
 0 0 1 0&lt;br /&gt;
Ieșire&lt;br /&gt;
 Datele de intrare respectă cerințele impuse&lt;br /&gt;
 1&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
== Exemplul 2 ==&lt;br /&gt;
Intrare&lt;br /&gt;
 4&lt;br /&gt;
 0 1 1 0&lt;br /&gt;
 1 0 0 0&lt;br /&gt;
 0 0 0 1&lt;br /&gt;
 0 0 0 0&lt;br /&gt;
Ieșire&lt;br /&gt;
 Datele de intrare respectă cerințele impuse&lt;br /&gt;
 0&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Rezolvare == &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot; line&amp;gt;&lt;br /&gt;
def is_adjacency_matrix(matrix, dimensiune):&lt;br /&gt;
    # Verificăm dacă matricea are dimensiunea dimensiune x dimensiune&lt;br /&gt;
    if len(matrix) != dimensiune or any(len(row) != dimensiune for row in matrix):&lt;br /&gt;
        print(&amp;quot;Datele de intrare nu respectă cerințele impuse&amp;quot;)&lt;br /&gt;
        return 0&lt;br /&gt;
&lt;br /&gt;
    # Verificăm condițiile pentru o matrice de adiacență&lt;br /&gt;
    for i in range(dimensiune):&lt;br /&gt;
        for j in range(dimensiune):&lt;br /&gt;
            # Condiția 1: Nu există bucle (diagonala principală trebuie să fie 0)&lt;br /&gt;
            if i == j and matrix[i][j] != 0:&lt;br /&gt;
                print(&amp;quot;Datele de intrare nu respectă cerințele impuse&amp;quot;)&lt;br /&gt;
                return 0&lt;br /&gt;
&lt;br /&gt;
            # Condiția 2: Elementele matricei trebuie să fie doar 0 sau 1&lt;br /&gt;
            if matrix[i][j] not in {0, 1}:&lt;br /&gt;
                print(&amp;quot;Datele de intrare nu respectă cerințele impuse&amp;quot;)&lt;br /&gt;
                return 0&lt;br /&gt;
&lt;br /&gt;
            # Condiția 3: Matricea trebuie să fie simetrică&lt;br /&gt;
            if matrix[i][j] != matrix[j][i]:&lt;br /&gt;
                print(&amp;quot;Datele de intrare nu respectă cerințele impuse&amp;quot;)&lt;br /&gt;
                return 0&lt;br /&gt;
&lt;br /&gt;
    # Dacă toate condițiile sunt îndeplinite, matricea este o matrice de adiacență&lt;br /&gt;
    print(&amp;quot;Datele de intrare respectă cerințele impuse&amp;quot;)&lt;br /&gt;
    return 1&lt;br /&gt;
&lt;br /&gt;
def main():&lt;br /&gt;
    # Citim dimensiunea matricei de la tastatură&lt;br /&gt;
    dimensiune = int(input())&lt;br /&gt;
&lt;br /&gt;
    # Citim matricea de adiacență de la tastatură&lt;br /&gt;
    matrix = []&lt;br /&gt;
&lt;br /&gt;
    for _ in range(dimensiune):&lt;br /&gt;
        row = list(map(int, input().split()))&lt;br /&gt;
        matrix.append(row)&lt;br /&gt;
&lt;br /&gt;
    # Verificăm dacă matricea este o matrice de adiacență&lt;br /&gt;
    result = is_adjacency_matrix(matrix, dimensiune)&lt;br /&gt;
&lt;br /&gt;
    # Afișăm rezultatul&lt;br /&gt;
    print(result)&lt;br /&gt;
&lt;br /&gt;
if __name__ == &amp;quot;__main__&amp;quot;:&lt;br /&gt;
    main()&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tita Marian</name></author>
	</entry>
</feed>