Editorial for C bài 9.B1: Chẵn lẻ chia đôi


Remember to use this editorial only when stuck, and not to copy-paste code from it. Please be respectful to the problem author and editorialist.

Submitting an official solution before solving the problem yourself is a bannable offence.

Author: buitrunghieu

Lời giải chi tiết

Ý tưởng: Ta sẽ thấy sau khi sắp xếp các số từ 1 đến \(n\) theo đề bài, ta sẽ có \([(n+1)/2]\) số lẻ phía bên trái và \([n/2]\) số chẵn phía bên phải. Nếu k > \([(n+1)/2]\) tức là nó đang là số chẵn thứ \(k-[(n+1)/2]\). Nếu ngược lại tức là nó đang là số lẻ thứ \(k\).

Các bước giải:

  • Bước 1: Khai báo và nhập vào hai số nguyên dương \(n, k\).
  • Bước 2: Kiểm tra điều kiện \(k\) có lớn hơn \((n+1)/2\) hay không. Nếu có, ta cần trừ \(k\) đi một khoảng bằng \((n+1)/2\) và in ra số chẵn thứ \(k\) mới (là số \(2k\)). Nếu ngược lại, ta in ra số lẻ thứ \(k\) (là số \(2k-1\)).

Đăng ký khóa học: https://www.facebook.com/clblaptrinhfullhouse

SĐT liên hệ: 0372229686

Youtube: CLB Lập Trình Full House

Fullhouse dev đồng hành trên từng dòng code


Comments

There are no comments at the moment.