blob: 4fcb4abdf06ba734a5e84e82d415a5c1e852193f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
#include<iostream>
#include<fstream>
#include<vector>
using namespace std;
void get_fib(vector<int> &v, int N) {
int a = v.at(0);
int b = v.at(1);
while(b <= N) {
a += b;
v.push_back(a);
swap(a, b);
}
v.pop_back();
}
int main() {
ifstream in("input.txt");
ofstream out("output.txt");
for(short _ = 0; _ < 100; ++_) {
int N;
in >> N;
vector<int> fib {1, 2};
get_fib(fib, N);
vector<int> seq(fib.size(), 0);
int sum{};
for(int i = fib.size()-1; i >= 0; --i) {
if(fib.at(i) + sum > N) continue;
sum += fib.at(i);
seq[i] = 1;
}
for(auto const& i : seq)
out << i;
out << endl;
}
out.close();
in.close();
return 0;
}
|