> For the complete documentation index, see [llms.txt](https://somallg.gitbook.io/blog/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://somallg.gitbook.io/blog/codility.md).

# Codility

## Table of Contents

1. [Codility](/blog/codility.md#orgdb38a81)
   1. [Luyện thuật toán cùng Codility](/blog/codility.md#org820bbdb)
      1. [Codility là gì](/blog/codility.md#orge64191c)
      2. [Thuật toán và cách đo hiệu năng](/blog/codility.md#org79f5c13)
      3. [Những điểu cần chú ý](/blog/codility.md#org983c1e1)
      4. [Solution Codility](/blog/codility.md#orgf05566b)
      5. [Viết UT](/blog/codility.md#orgc0744a0)
      6. [Hướng giải quyết](/blog/codility.md#org8e5f391)
      7. [Pseudo code](/blog/codility.md#org4d6a26f)
      8. [Implement](/blog/codility.md#org506331c)
      9. [Chạy UT](/blog/codility.md#orgaa0521c)
      10. [Các bước phân tích](/blog/codility.md#org21eb932)

— description: Những điểu cần biết về Codility —

## Codility

### Luyện thuật toán cùng Codility

#### Codility là gì

#### Thuật toán và cách đo hiệu năng

#### Những điểu cần chú ý

#### Solution Codility

#### Viết UT

#### Hướng giải quyết

#### Pseudo code

#### Implement

#### Chạy UT

#### Các bước phân tích

* Problem: Peaks
* PT:

  l = arr.length;

  getFactors l => \[f1, ….f2]

  peaks array => \[false, true, ….true, false];

  for each factor f1 (f1 > 1) => we have l / f1 blocks we can skip 1

  we have l / f1 blocks =>

  check if each block has a peak

  how to check for a slice (i, j) contains a block ?

  1. loop i => j if peaks\[k] = true => O(n)
  2. use memorize to get O(i)
