Участник:Kozub/Ascending Fibonacci Numbers

Материал из DISCOPAL
< Участник:Kozub
Версия от 22:29, 1 декабря 2020; StasFomin (обсуждение | вклад) (Массовая правка: удаление Категория:Problem)

(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Ссылка на задачу на spojcode : https://www.spoj.com/problems/ASCDFIB/

С++(компилятор gcc8.3)

#include<iostream>
#include <bits/stdc++.h>
 
 
using namespace std;
 
int main(){
	int rc=100000;
	int A, B, N;
	int a, b, c;
	cin>>N;
 
	for(int j = 0;j<N;j++){
			multiset<int> s;
			a = 0; b = 1;
 
			cin>>A>>B;
 
			for (int i=0;i<A-1;i++){
				c=b; b=(a+b) % rc; a = c;
			}	
 
 
			s.insert(a);
			for(int i=0;i<B;i++){
				c=b; b=(a+b) % rc; a = c;
				s.insert(a);
 
				if (i>99){
					s.erase(--s.end()); 
				}
			}
 
			int m = (B<100) ? (B+1): 100;
 
			cout<<"Case "<<j+1<<": ";
			for(int i=0;i<m;i++){
				cout <<*(s.begin())<< " ";
				s.erase(s.begin());
			}
			cout << '\n';
	}
 
	return 0;
}