Hackerank Beautiful arrangement - PHP

 Khi tham gia bài test code, các bạn có thể làm quen với Hackerrank, hoặc Leetcode,...

Đây là các site để kiểm tra kỹ năng code liên quan đến thuật toán ( giải thuật - algorithm)

Mình xin giới thiệu với các bạn, một bài test liên quan đến

  1. Mảng
  2. Đệ quy
  3. Swap
  4. Vòng lặp
Các bạn có thể google với từ khóa : beautiful arrangement hackerrank. 

Đầu bài như sau:
- Cho số n, n là số nguyên dương >= 1
- Chọn 1 số n bất kỳ
- Một mảng được gọi là 'Beautiful arrangement' nếu thỏa mãn điều kiện sau:
++ phần tử tại ví trí i chia hết cho i

HOẶC
++ i chia hết cho phần tử tại ví trí i

- Tìm số lần có thể sắp xếp được mảng thỏa mãn điều kiện trên

Ví dụ

Input: n = 2
Output: 2
Explanation: 
The first beautiful arrangement is [1,2]:
    - perm[1] = 1 is divisible by i = 1
    - perm[2] = 2 is divisible by i = 2
The second beautiful arrangement is [2,1]:
    - perm[1] = 2 is divisible by i = 1
    - i = 2 is divisible by perm[2] = 1



Comments

Popular posts from this blog

Các câu hỏi liên quan đến restful API

Active record (Eloquent) trong Laravel và Data Mapper (Doctrine) trong Symfony

CI/CD diagram, infra