[Buổi 4][Vòng lặp][RDD] Bài 28: Người say rượu
Người say rượu
Bối cảnh
Bài toán được mô tả qua yêu cầu và dữ liệu dưới đây.
Yêu cầu
FullHouse Dev rất buồn sau khi biết tin về một sự kiện không may. Anh ấy cố gắng giải sầu bằng rượu và trở nên say xỉn. Bây giờ anh ấy muốn về nhà nhưng không thể đi thẳng được. Cứ mỗi 3 bước tiến về phía trước, anh ấy lại lùi lại 1 bước.
Cụ thể, trong giây thứ nhất anh ấy tiến 3 bước, giây thứ hai lùi 1 bước, giây thứ ba tiến 3 bước, giây thứ tư lùi 1 bước, và cứ tiếp tục như vậy.
FullHouse Dev sẽ ở cách vị trí ban đầu bao xa sau k giây? Giả sử vị trí ban đầu của FullHouse Dev là 0.
Input
- Dòng đầu tiên chứa một số nguyên T - số lượng test case.
- Mỗi test case gồm một dòng chứa số nguyên k - số giây đã trôi qua.
Output
- Với mỗi test case, in ra một dòng chứa một số nguyên - vị trí của FullHouse Dev sau k giây.
Ràng buộc
- 1 ≤ T ≤ 100000
- 0 ≤ k ≤ 100000
- Tổng của k trong tất cả các test case không vượt quá 1000000
Ví dụ 1
Input
3
5
11
23
Output
7
13
25
Giải thích ví dụ
Test case 1:
- Giây 1: tiến 3 bước, đến vị trí 3
- Giây 2: lùi 1 bước, đến vị trí 2
- Giây 3: tiến 3 bước, đến vị trí 5
- Giây 4: lùi 1 bước, đến vị trí 4
- Giây 5: tiến 3 bước, đến vị trí 7
Thông tin học tập
- Buổi: B04
- Concepts: for/while loops, multiple test cases
- Giới hạn kiến thức: B01-B04
- Time limit: 2 seconds
- Memory limit: 64 MB
- Point: 10
Comments