diff options
| author | Syndamia <kamen@syndamia.com> | 2024-01-05 08:59:38 +0200 |
|---|---|---|
| committer | Syndamia <kamen@syndamia.com> | 2024-01-05 08:59:38 +0200 |
| commit | 7e7c710287f25b9c958c9026b18f88587174d47f (patch) | |
| tree | 7eba964d18ec76111c24deca68fb2aea27e85005 /week11/ex4.cpp | |
| parent | dbdce2c71e8327d5cbfa3e87840866b504efec0f (diff) | |
| download | upp-2023-solutions-7e7c710287f25b9c958c9026b18f88587174d47f.tar upp-2023-solutions-7e7c710287f25b9c958c9026b18f88587174d47f.tar.gz upp-2023-solutions-7e7c710287f25b9c958c9026b18f88587174d47f.zip | |
[w11] Added solutions
Diffstat (limited to 'week11/ex4.cpp')
| -rw-r--r-- | week11/ex4.cpp | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/week11/ex4.cpp b/week11/ex4.cpp new file mode 100644 index 0000000..ec05144 --- /dev/null +++ b/week11/ex4.cpp @@ -0,0 +1,23 @@ +#include <iostream> + +void printNumbers(int currentBit, char* buf, const int N) { + if (currentBit == 0) { + std::cout << buf << std::endl; + return; + } + buf[N - currentBit] = '0'; + printNumbers(currentBit - 1, buf, N); + buf[N - currentBit] = '1'; + printNumbers(currentBit - 1, buf, N); +} + +int main() { + int N; + std::cin >> N; + + char* buf = new char[N+1]; + buf[N] = '\0'; + + printNumbers(N, buf, N); + delete[] buf; +} |
