<?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=3162_-_cife_bin_back</id>
	<title>3162 - cife bin back - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.universitas.ro/index.php?action=history&amp;feed=atom&amp;title=3162_-_cife_bin_back"/>
	<link rel="alternate" type="text/html" href="https://wiki.universitas.ro/index.php?title=3162_-_cife_bin_back&amp;action=history"/>
	<updated>2026-05-01T06:41:43Z</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=3162_-_cife_bin_back&amp;diff=10067&amp;oldid=prev</id>
		<title>Benzar Ioan: Pagină nouă: == Cerința == Se dă un număr natural n. Afișați în ordine lexicografică toate secvențele de cifre binare care au atâtea cifre de 0 și atâtea cifre de 1 câte are reprezentarea binară a lui n. == Date de intrare == Programul citește de la tastatură numărul n. == Date de ieșire == Programul va afișa pe ecran combinațiile de cifre binare cerute, câte una pe fiecare rând. == Restricții și precizări == *1 ≤ n ≤ 2.000.000 == Exemplu 1 == ;Intrare 17 ;Iesi...</title>
		<link rel="alternate" type="text/html" href="https://wiki.universitas.ro/index.php?title=3162_-_cife_bin_back&amp;diff=10067&amp;oldid=prev"/>
		<updated>2024-06-03T19:38:00Z</updated>

		<summary type="html">&lt;p&gt;Pagină nouă: == Cerința == Se dă un număr natural n. Afișați în ordine lexicografică toate secvențele de cifre binare care au atâtea cifre de 0 și atâtea cifre de 1 câte are reprezentarea binară a lui n. == Date de intrare == Programul citește de la tastatură numărul n. == Date de ieșire == Programul va afișa pe ecran combinațiile de cifre binare cerute, câte una pe fiecare rând. == Restricții și precizări == *1 ≤ n ≤ 2.000.000 == Exemplu 1 == ;Intrare 17 ;Iesi...&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;
Se dă un număr natural n. Afișați în ordine lexicografică toate secvențele de cifre binare care au atâtea cifre de 0 și atâtea cifre de 1 câte are reprezentarea binară a lui n.&lt;br /&gt;
== Date de intrare ==&lt;br /&gt;
Programul citește de la tastatură numărul n.&lt;br /&gt;
== Date de ieșire ==&lt;br /&gt;
Programul va afișa pe ecran combinațiile de cifre binare cerute, câte una pe fiecare rând.&lt;br /&gt;
== Restricții și precizări ==&lt;br /&gt;
*1 ≤ n ≤ 2.000.000&lt;br /&gt;
== Exemplu 1 ==&lt;br /&gt;
;Intrare&lt;br /&gt;
17&lt;br /&gt;
;Iesire&lt;br /&gt;
00011&amp;lt;br&amp;gt;&lt;br /&gt;
00101&amp;lt;br&amp;gt;&lt;br /&gt;
00110&amp;lt;br&amp;gt;&lt;br /&gt;
01001&amp;lt;br&amp;gt;&lt;br /&gt;
01010&amp;lt;br&amp;gt;&lt;br /&gt;
01100&amp;lt;br&amp;gt;&lt;br /&gt;
10001&amp;lt;br&amp;gt;&lt;br /&gt;
10010&amp;lt;br&amp;gt;&lt;br /&gt;
10100&amp;lt;br&amp;gt;&lt;br /&gt;
11000&lt;br /&gt;
== Rezolvare ==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot; line&amp;gt;&lt;br /&gt;
from itertools import permutations&lt;br /&gt;
&lt;br /&gt;
def generate_binary_sequences(n):&lt;br /&gt;
    binary_representation = bin(n)[2:]&lt;br /&gt;
    count_ones = binary_representation.count(&amp;#039;1&amp;#039;)&lt;br /&gt;
    count_zeros = len(binary_representation) - count_ones&lt;br /&gt;
&lt;br /&gt;
    # Create the base string with the correct number of 1s and 0s&lt;br /&gt;
    base_string = &amp;#039;1&amp;#039; * count_ones + &amp;#039;0&amp;#039; * count_zeros&lt;br /&gt;
&lt;br /&gt;
    # Generate all unique permutations of the base string&lt;br /&gt;
    unique_permutations = sorted(set(permutations(base_string)))&lt;br /&gt;
&lt;br /&gt;
    # Convert tuples back to strings&lt;br /&gt;
    result = [&amp;#039;&amp;#039;.join(p) for p in unique_permutations]&lt;br /&gt;
&lt;br /&gt;
    return result&lt;br /&gt;
&lt;br /&gt;
def main():&lt;br /&gt;
    n = int(input().strip())&lt;br /&gt;
    results = generate_binary_sequences(n)&lt;br /&gt;
    for result in results:&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>Benzar Ioan</name></author>
	</entry>
</feed>