Điều hướng chính

Nhắn tin NQ Coding

Ngôn ngữ

Phím tắt

/
Chuyển đến ô tìm bài
g p
Đi đến bài tập
g c
Đi đến kỳ thi
g u
Đi đến người dùng
?
Mở trợ giúp phím tắt

Bài tập

Bài được chọn theo nhịp luyện tập của bạn, cùng mọi bài mới vừa lên.

Dễ

Túi hàng Black Friday lớn

100 điểm 100% AC 1 đã giải

staffagent

Một cửa hàng đang giảm giá có \(n\) món đồ, món thứ \(i\) nặng \(w_i\) và có giá trị \(v_i\). Bạn có một chiếc túi chứa được tổng khối lượng tối đa \(M\). Hãy chọn một số món (mỗi món dùng nhiều nhất một lần) sao cho tổng khối lượng không vượt quá \(M\) và tổng giá trị là lớn nhất có thể.

Input

  • Dòng đầu: hai số nguyên \(n\), \(M\).
  • \(n\) dòng tiếp theo, dòng thứ \(i\) gồm hai số nguyên \(w_i\) và \(v_i\).

Output

  • In ra tổng giá trị lớn nhất có thể đạt được.

Constraints

  • \(1 \le n \le 40\)
  • \(1 \le M \le 4 \times 10^{10}\)
  • \(1 \le w_i, v_i \le 10^9\)

Sample Input

4 10
4 5
3 4
6 7
5 6

Sample Output

12

Explanation

Chọn món 1 và món 3 (khối lượng \(4+6=10\), giá trị \(5+7=12\)). Chọn món 2 và món 4 chỉ được giá trị 10, nên đáp án là 12.

Dễ

Tổng chẵn

100 điểm 66% AC 26 đã giải

root

Nhập vào hai số nguyên dương \(a\) và \(b\) \((a \leq b)\). Tính tổng tất cả các số chẵn từ \(a\) đến \(b\).

Ví dụ, khi \(a = 2\), \(b = 9\), các số chẵn trong đoạn \([2, 9]\) là \(2, 4, 6, 8\), có tổng là \(2 + 4 + 6 + 8 = 20\).

Example

Test 1

Input
2 9
Output
20
Dễ

Đảo xâu

100 điểm 100% AC 1 đã giải

staffagent

Lam là một học sinh giỏi môn Tin học, các bạn trong lớp hay nhờ Lam giải các bài toán khó. Hôm nay các bạn có nhờ Lam một bài toán về xâu như sau:

Cho xâu \(S\) chỉ gồm các kí tự chữ cái in thường, các kí tự trong xâu \(S\) được đánh số thứ tự từ \(1\) đến \(|S|\) (trong đó \(|S|\) là độ dài của xâu \(S\)) và thực hiện \(m\) lần thay đổi.

Với mỗi lần thay đổi, chọn một số nguyên dương \(k\) và đảo ngược một đoạn của xâu \(S\) từ vị trí \(|S| - k + 1\) đến vị trí \(k\) (luôn đảm bảo \(k > \left\lfloor \frac{|S|}{2} \right\rfloor\)).

Yêu cầu. Viết chương trình tìm xâu \(S\) sau \(m\) lần thay đổi.

Input

  • Dòng thứ nhất là xâu \(S\) \((2 \le |S| \le 2 \cdot 10^5)\);
  • Dòng thứ hai là số nguyên dương \(m\) \((1 \le m \le 10^5)\);
  • Dòng thứ ba là \(m\) số nguyên dương \(a_1, a_2, \dots, a_m\) \(\left(\left\lfloor \frac{|S|}{2} \right\rfloor < a_i \le |S|, i = 1..m\right)\).

Output

Ghi ra tệp văn bản một dòng duy nhất là kết quả của bài toán.

Input

%
abcdef
3
5 6 4

Output

%
fbdcea

Notes

  • Với \(k = 5\) thì xâu “abcdef” thay đổi thành “aedcbf”;
  • Với \(k = 6\) thì xâu “aedcbf” lại đổi thành “fbcdea”;
  • Với \(k = 4\) thì xâu “fbcdea” lại đổi thành “fbdcea”.

Scoring

  • (50%) \(|S| \le 10^3\) và \(m \le 10^3\);
  • (50%) Không có ràng buộc gì thêm.
Dễ

Sống sót giữa nước, lửa và không khí

100 điểm 100% AC 1 đã giải

staffagent

Một nhân vật trong trò chơi có chỉ số máu \(H\) và giáp \(A\). Nhân vật luôn ở một trong ba vùng: Không khí, Nước hoặc Lửa. Sau mỗi bước, nhân vật bắt buộc phải chuyển sang một vùng khác với vùng hiện tại (ở bước đầu tiên có thể chọn bất kỳ vùng nào trong ba vùng). Khi bước vào một vùng, chỉ số thay đổi như sau:

Vùng Máu Giáp
Không khí \(+3\) \(+2\)
Nước \(-5\) \(-10\)
Lửa \(-20\) \(+5\)

Nếu sau một bước mà máu hoặc giáp \(\le 0\) thì nhân vật chết ngay và bước đó không được tính. Hãy tìm số bước nhiều nhất mà nhân vật có thể thực hiện mà vẫn còn sống.

Input

  • Dòng đầu chứa số nguyên \(t\) là số bộ test.
  • Mỗi bộ test là một dòng chứa hai số nguyên dương \(H\) và \(A\) là máu và giáp ban đầu.

Output

Với mỗi bộ test in ra một dòng là số bước sống sót lớn nhất.

Constraints

  • \(1 \le t \le 10\)
  • \(1 \le H, A \le 1000\)

Sample Input

3
5 5
25 14
30 40

Sample Output

1
7
13

Explanation

Với \((H, A) = (5, 5)\): bước đầu vào Không khí được \((8, 7)\); sau đó vào Nước sẽ có giáp \(-3\), vào Lửa sẽ có máu \(-12\), đều chết, nên đáp án là \(1\). Bước đầu vào Nước hoặc Lửa thì chết ngay.

Xem thêm