<?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=2820_-_Sir11</id>
	<title>2820 - Sir11 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.universitas.ro/index.php?action=history&amp;feed=atom&amp;title=2820_-_Sir11"/>
	<link rel="alternate" type="text/html" href="https://wiki.universitas.ro/index.php?title=2820_-_Sir11&amp;action=history"/>
	<updated>2026-05-01T15:38:48Z</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=2820_-_Sir11&amp;diff=369&amp;oldid=prev</id>
		<title>Heres.Gabriela: Pagină nouă:  == Cerință ==  Se consideră șirul 1, -1, 2 … definit astfel: f1=1, f2=−1, iar fn=1−2⋅fn−1−fn−2  , dacă n≥3 (unde n este un număr natural).  Se citește un număr natural, n (n∈[1,10&lt;sup&gt; 9 &lt;/sup&gt;]), și se cere să se afișeze, separați prin câte un spațiu, primii n termeni ai șirului, în ordine inversă apariției lor în acesta.  == Date de intrare ==   Fișierul de intrare sir11.in conține pe prima linie numărul n.  == Date de ieșire ==  Fi...</title>
		<link rel="alternate" type="text/html" href="https://wiki.universitas.ro/index.php?title=2820_-_Sir11&amp;diff=369&amp;oldid=prev"/>
		<updated>2023-01-07T18:01:19Z</updated>

		<summary type="html">&lt;p&gt;Pagină nouă:  == Cerință ==  Se consideră șirul 1, -1, 2 … definit astfel: f1=1, f2=−1, iar fn=1−2⋅fn−1−fn−2  , dacă n≥3 (unde n este un număr natural).  Se citește un număr natural, n (n∈[1,10&amp;lt;sup&amp;gt; 9 &amp;lt;/sup&amp;gt;]), și se cere să se afișeze, separați prin câte un spațiu, primii n termeni ai șirului, în ordine inversă apariției lor în acesta.  == Date de intrare ==   Fișierul de intrare sir11.in conține pe prima linie numărul n.  == Date de ieșire ==  Fi...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&lt;br /&gt;
== Cerință ==&lt;br /&gt;
&lt;br /&gt;
Se consideră șirul 1, -1, 2 … definit astfel: f1=1, f2=−1, iar fn=1−2⋅fn−1−fn−2&lt;br /&gt;
&lt;br /&gt;
, dacă n≥3 (unde n este un număr natural).&lt;br /&gt;
&lt;br /&gt;
Se citește un număr natural, n (n∈[1,10&amp;lt;sup&amp;gt; 9 &amp;lt;/sup&amp;gt;]), și se cere să se afișeze, separați prin câte un spațiu, primii n termeni ai șirului, în ordine inversă apariției lor în acesta.&lt;br /&gt;
&lt;br /&gt;
== Date de intrare == &lt;br /&gt;
&lt;br /&gt;
Fișierul de intrare sir11.in conține pe prima linie numărul n.&lt;br /&gt;
&lt;br /&gt;
== Date de ieșire ==&lt;br /&gt;
&lt;br /&gt;
Fișierul de ieșire sir11.out va conține pe prima linie, separați prin câte un spațiu, primii n termeni ai șirului, în ordine inversă apariției lor în acesta.&lt;br /&gt;
&lt;br /&gt;
== Restricții și precizări == &lt;br /&gt;
&lt;br /&gt;
Pentru determinarea și afișarea numerelor cerute se utilizează un algoritm eficient din punctul de vedere al spațiului de memorie și al timpului de executare;&lt;br /&gt;
se recomandă evitarea memorării numerelor într-un tablou sau în altă structură de date similară&lt;br /&gt;
în enunțul original, n∈[1,10&amp;lt;sup&amp;gt; 9 &amp;lt;/sup&amp;gt;]; datorită dimensiunilor fișierelor obținute, limita maximă a lui n a fost redusă;&lt;br /&gt;
&lt;br /&gt;
== Exemplu ==&lt;br /&gt;
&lt;br /&gt;
Date de intrare: &amp;#039;&amp;#039;&amp;#039;sir11.in : 3 &amp;#039;&amp;#039;&amp;#039;&amp;lt;br /&amp;gt;&lt;br /&gt;
Date de ieșire: &amp;#039;&amp;#039;&amp;#039;sir11.out :  2 -1 1 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
== Rezolvare ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot; line&amp;gt;&lt;br /&gt;
if __name__ == &amp;quot;__main__&amp;quot;:&lt;br /&gt;
    citire_fisier = open(&amp;quot;sir11.in&amp;quot;, &amp;quot;r&amp;quot;)&lt;br /&gt;
    scriere_fisier = open(&amp;quot;sir11.out&amp;quot;, &amp;quot;w&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
    n = int(citire_fisier.readline().strip())&lt;br /&gt;
    f1 = 1&lt;br /&gt;
    f2 = -1&lt;br /&gt;
    for i in range(3, n + 1):&lt;br /&gt;
        f3 = 1 - 2 * f2 - f1&lt;br /&gt;
        if i != n:&lt;br /&gt;
            f1 = f2&lt;br /&gt;
            f2 = f3&lt;br /&gt;
    for i in range(n + 1, 3, -1):&lt;br /&gt;
        scriere_fisier.write(str(f3))&lt;br /&gt;
        scriere_fisier.write(&amp;#039; &amp;#039;)&lt;br /&gt;
        f1 = 1 - 2 * f2 - f3&lt;br /&gt;
        f3 = f2&lt;br /&gt;
        f2 = f1&lt;br /&gt;
    scriere_fisier.write(&amp;#039;-1 &amp;#039;)&lt;br /&gt;
    scriere_fisier.write(&amp;#039;1&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Heres.Gabriela</name></author>
	</entry>
</feed>