Надя Пивко обычная студентка обычного института. Естественно, любимое место Нади Пивко в институте – это столовая. Сегодня она в очередной раз решила покушать рис, мясо по-французски (конечно, с подливой), пирожное и чай. Сев за стол, она увидела результат работы вандала! На столе было нацарапано: f1(n) = an - bn
f2(n) = A * f2(n - 1) + B * f2(n - 2)
Поскольку Надя Пивко пришла в столовую одна, то ей стало скучно, поэтому она решила разгадать, что же всё-таки хотел поведать вандал, надругавшись над столом. Поразмыслив немного, Надя Пивко решила, что последовательности могут быть одинаковы, но для этого необходимо задать А и В. Внезапно прозвенел звонок и ей пришлось убежать на мат. логику и задача осталась нерешённой Наде Пивко найти А и В, а так же f2(0) и f2(1) при заданных а и b, причём полученная последовательность f2(n) должна быть идентична последовательности f1(n).
1)
#include <iostream>
#include <cmath>
#include <vector>
#include <algorithm>
#include <set>
using namespace std;
signed main() {
srand(time(NULL));
int n;
cin >> n;
int a[n];
for(int i = 0; i < n; i++)
a[i] = rand() % 5 + 1;
vector<int> ans;
for(int i = 0; i < n; i++)
{
cout << a[i] << " ";
if(a[i] == a[0])
ans.push_back(i);
}
cout << "\n";
for(auto i: ans)
cout << i << " ";
}
2)
#include <iostream>
#include <cmath>
#include <vector>
#include <algorithm>
#include <set>
using namespace std;
signed main() {
int n,k;
cin >> n >> k;
int a[n];
vector<int> ans;
for(int i = 0; i < n; i++)
{
cin >> a[i];
if(a[i] % k == 0)
ans.push_back(a[i]);
}
for(auto i: ans)
cout << i << " ";
}
3)
#include <iostream>
#include <cmath>
#include <vector>
#include <algorithm>
#include <set>
using namespace std;
signed main() {
int n,z;
cin >> n >> z;
int a[n];
for(int i = 0; i < n; i++)
{
cin >> a[i];
a[i] = min(a[i],z);
}
for(auto i: a)
cout << i << " ";
}