12/01/2019, 23:58

5 bài toán lập trình mà bất kể lập trình viên nào cũng cần có khả năng giải quyết trong vòng 1 giờ

Người viết: Vu Long Problem 1 Viết 3 hàm tính tổng của các số trong 1 dãy cho trước sử dụng for-loop, while-loop, và để quy. Problem 2 Viết 1 hàm kết hợp 2 dãy bằng cách xen kẽ các phần tử, Ví dụ: cho 2 dãy [a, b, c] và [1, 2, 3], hàm trả về [a, 1, b, 2, c, 3]. Problem 3 ...

Người viết: Vu Long

Problem 1

Viết 3 hàm tính tổng của các số trong 1 dãy cho trước sử dụng for-loop, while-loop, và để quy.

Problem 2

Viết 1 hàm kết hợp 2 dãy bằng cách xen kẽ các phần tử, Ví dụ: cho 2 dãy [a, b, c] và [1, 2, 3], hàm trả về [a, 1, b, 2, c, 3].

Problem 3

Viết 1 hàm in ra 100 số Fibonacci đầu tiên. (0, 1, 1, 2, 3, 5, 8, 13, 21, 34, …)

Problem 4

Viết 1 hàm nhận vào 1 dãy các số nguyên không âm, sắp xếp chúng sao cho hợp thành 1 số lớn nhất có thể. Ví dụ nhận vào dãy [40, 1, 99, 12], hàm trả về 9940121.

Problem 5

Cho 1 dãy các số 1, 2, 3, 4, …, 9. Thêm các dấu +, – vào giữa các số này sao cho kết quả của phép tính = 100. Ví dụ 1 + 2 + 34 – 5 + 67 – 8 + 9 = 100. Viết 1 hàm in ra tất cả các cách thêm dấu.

Đáp án

Problem 1, 2, 3 khá đơn giản nên mình chỉ viết lời giải cho problem 4 và 5.

I’m sure there are better solutions to these problems. I’d love to see them.

Techtalk via Viblo

0