Giả sử chúng ta có một số n. Chúng tôi muốn chia nó thành một số chữ số khác 0 có tổng là n. Muốn tìm một giải pháp với số chữ số khác nhau tối thiểu có thể có.
Vì vậy, nếu đầu vào là n =13, thì đầu ra sẽ là [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
Các bước
Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -
for initialize i := 0, when i < n, update (increase i by 1), do: print 1
Ví dụ
Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -
#include <bits/stdc++.h> using namespace std; void solve(int n){ for (int i = 0; i < n; i++) printf("1, "); } int main(){ int n = 13; solve(n); }
Đầu vào
13
Đầu ra
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,