<?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=3085_-_fsecv</id>
	<title>3085 - fsecv - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.universitas.ro/index.php?action=history&amp;feed=atom&amp;title=3085_-_fsecv"/>
	<link rel="alternate" type="text/html" href="https://wiki.universitas.ro/index.php?title=3085_-_fsecv&amp;action=history"/>
	<updated>2026-05-01T12:08:46Z</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=3085_-_fsecv&amp;diff=9993&amp;oldid=prev</id>
		<title>AjM: Pagină nouă: == Enunt == Se consideră un șir A format din N numere întregi, numerotate de la 1 la N. Numim secvență a șirului A orice succesiune de elemente consecutive din șir de forma A[i], A[i+1], …, A[j], cu 0 &lt; i &lt; j ≤ N. == Cerinţa == Fiind dat șirul A cu N numere întregi se cere să se răspundă la Q întrebări de forma: i j k (0 &lt; i &lt; j ≤ N). Pentru fiecare întrebare se cere să se determine câte numere din secvența A[i], …, A[j] au frecvența de apariții e...</title>
		<link rel="alternate" type="text/html" href="https://wiki.universitas.ro/index.php?title=3085_-_fsecv&amp;diff=9993&amp;oldid=prev"/>
		<updated>2024-06-03T16:22:24Z</updated>

		<summary type="html">&lt;p&gt;Pagină nouă: == Enunt == Se consideră un șir A format din N numere întregi, numerotate de la 1 la N. Numim secvență a șirului A orice succesiune de elemente consecutive din șir de forma A[i], A[i+1], …, A[j], cu 0 &amp;lt; i &amp;lt; j ≤ N. == Cerinţa == Fiind dat șirul A cu N numere întregi se cere să se răspundă la Q întrebări de forma: i j k (0 &amp;lt; i &amp;lt; j ≤ N). Pentru fiecare întrebare se cere să se determine câte numere din secvența A[i], …, A[j] au frecvența de apariții e...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Enunt ==&lt;br /&gt;
Se consideră un șir A format din N numere întregi, numerotate de la 1 la N. Numim secvență a șirului A orice succesiune de elemente consecutive din șir de forma A[i], A[i+1], …, A[j], cu 0 &amp;lt; i &amp;lt; j ≤ N.&lt;br /&gt;
== Cerinţa ==&lt;br /&gt;
Fiind dat șirul A cu N numere întregi se cere să se răspundă la Q întrebări de forma: i j k (0 &amp;lt; i &amp;lt; j ≤ N). Pentru fiecare întrebare se cere să se determine câte numere din secvența A[i], …, A[j] au frecvența de apariții egală cu k.&lt;br /&gt;
== Date de intrare ==&lt;br /&gt;
Fișierul de intrare fsecv.in conține pe prima linie numerele naturale nenule N și Q cu semnificația din enunț. Pe următoarea linie se găsesc N numere întregi ce reprezintă valorile șirului A. Pe următoarele linii se află descrierea celor Q întrebări, câte una pe linie, în formatul precizat i j k.&lt;br /&gt;
== Date de ieșire ==&lt;br /&gt;
Fișierul de ieșire fsecv.out va conține Q linii. Pe fiecare linie se va găsi răspunsul întrebării i, cu 1 ≤ i ≤ Q.&lt;br /&gt;
== Restricţii şi precizări ==&lt;br /&gt;
* 2 &amp;lt; N ≤ 100.000&lt;br /&gt;
* 1 &amp;lt; Q ≤ 100.000&lt;br /&gt;
* 0 &amp;lt; k ≤ N&lt;br /&gt;
* -100.000 ≤ A[i] ≤ 100.000; 1 ≤ i ≤ N&lt;br /&gt;
== Exemplu ==&lt;br /&gt;
; fsecv.in&lt;br /&gt;
 11 3&lt;br /&gt;
 1 2 4 3 2 5 6 4 5 2 1&lt;br /&gt;
 1 6 2&lt;br /&gt;
 2 7 3&lt;br /&gt;
 4 11 1&lt;br /&gt;
; fsecv.out&lt;br /&gt;
 1&lt;br /&gt;
 0&lt;br /&gt;
 4&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Explicație ==&lt;br /&gt;
Secvența la care se referă prima întrebare este 1,2,4,3,2,5, iar răspunsul este egal cu 1.&lt;br /&gt;
Secvența la care se referă a doua întrebare este 2,4,3,2,5,6, iar răspunsul este egal cu 0.&lt;br /&gt;
Secvența la care se referă a treia întrebare este 3,2,5,6,4,5,2,1, iar răspunsul este egal cu 4.&lt;br /&gt;
== Rezolvare ==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot; line&amp;gt;&lt;br /&gt;
def count_elements_with_frequency(sequence, k):&lt;br /&gt;
    frequency = {}&lt;br /&gt;
    for num in sequence:&lt;br /&gt;
        if num in frequency:&lt;br /&gt;
            frequency[num] += 1&lt;br /&gt;
        else:&lt;br /&gt;
            frequency[num] = 1&lt;br /&gt;
&lt;br /&gt;
    count = 0&lt;br /&gt;
    for num in sequence:&lt;br /&gt;
        if frequency[num] == k:&lt;br /&gt;
            count += 1&lt;br /&gt;
&lt;br /&gt;
    return count&lt;br /&gt;
&lt;br /&gt;
def main():&lt;br /&gt;
    # Citirea datelor de intrare&lt;br /&gt;
    N, Q = map(int, input().split())&lt;br /&gt;
    sequence = list(map(int, input().split()))&lt;br /&gt;
&lt;br /&gt;
    # Procesarea întrebărilor&lt;br /&gt;
    answers = []&lt;br /&gt;
    for _ in range(Q):&lt;br /&gt;
        i, j, k = map(int, input().split())&lt;br /&gt;
        count = count_elements_with_frequency(sequence[i-1:j], k)&lt;br /&gt;
        answers.append(count)&lt;br /&gt;
&lt;br /&gt;
    # Afisarea rezultatului&lt;br /&gt;
    for count in answers:&lt;br /&gt;
        print(count)&lt;br /&gt;
&lt;br /&gt;
if __name__ == &amp;quot;__main__&amp;quot;:&lt;br /&gt;
    main()&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>AjM</name></author>
	</entry>
</feed>