Hãy thực hiện các yêu cầu sau: Chuẩn hóa xâu S, đổi chữ thường sang chữ hoa;Bài 1. Đếm từ trong xâu Chuẩn hóa xâu có nghĩa là loại bỏ dấu cách dư thừa trong xâu. Từ là một dãy chữ cái liên tiếp, không chứa dấu cách. Cho xâu S có độ dài không quá 1000 kí tự bao gồm các chữ cái tiếng Anh in thường, in hoa và dấu cách. Yêu cầu: Hãy thực hiện các yêu cầu sau: a) Chuẩn hóa xâu S, đổi chữ thường sang chữ hoa; b) Ghi độ dài của xâu S sau khi đã chuẩn hóa; c) Đếm số lượng các từ có trong xâu S. Dữ liệu: Vào từ tệp văn bản COUNTOFWORDS.INP gồm 1 dòng chứa xâu S. Kết quả: Ghi ra tệp văn bản COUNTOFWORDS.OUT gồm 3 dòng: Dòng 1: xâu S sau khi đã chuẩn hóa, chuyển hết về ký tự in hoa. Dòng 2: độ dài mới của xâu S sau khi chuẩn hóa. Ví dụ:Dòng 3: số lượng các từ có trong xâu S. COUNTOFWORDS.INPCOUNTOFWORDS.OUT thpt minh haTHPT MINH HA 12 3 Ràng buộc: Có 30% số test ứng với 30% số điểm của bài có độ dài xâu S không quá 100. Có 30% số test ứng với 30% số điểm của bài có độ dài xâu S không quá 255. Có 40% số test ứng với 40% số điểm của bài có độ dài xâu S không quá 1000. Bài 2. Xếp thanh gỗ Nam có một thanh gỗ có độ dài là một số nguyên dương N. Anh ta muốn thực hiện chính xác ba lần cắt để được bốn phần của cây gậy. Mỗi phần có chiều dài số nguyên dương và tổng độ dài của các phần này sẽ bằng N. Vốn yêu thích hình chữ nhật và không thích hình vuông, nên anh tự hỏi, có bao nhiêu cách để cắt một thanh gỗ thành bốn phần để sau đó có thể tạo hình chữ nhật bằng các phần này, nhưng không thể tạo thành hình vuông. Yêu cầu: Em hãy lập trình giúp Nam đếm số cách như vậy. Trang 2 Hai cách để cắt thanh gỗ được coi là khác biệt nếu tồn tại một số nguyên x, sao cho số phần của độ dài x theo cách thứ nhất khác với số phần của độ dài x theo cách thứ hai. Dữ liệu: Vào từ tệp văn bản RECTANGLE.INP gồm một dòng chứa số nguyên dương N (1 ≤ N ≤ 2×109) - chiều dài thanh gỗ của Nam. Kết quả: Ghi ra tệp văn bản RECTANGLE.OUT một số nguyên duy nhất - số cách cắt thanh gỗ của Nam theo yêu cầu. Nếu không cắt được thì ghi số 0. Ví dụ: RECTANGLE.INPRECTANGLE.OUTGiải thích 61chỉ có duy nhất 1 cách cắt là {1,1,2,2} 204có 4 cách cắt là: {1, 1, 9, 9}, {2, 2, 8, 8}, {3, 3, 7, 7} và {4, 4, 6, 6}. Ràng buộc: Có 30% số test ứng với 30% số điểm của bài có 1 ≤ N ≤ 105; Có 30% số test ứng với 30% số điểm của bài có 105 ≤ N ≤ 107; Có 40% số test ứng với 40% số điểm của bài có 107 ≤ N ≤ 2×109. Bài 3. Dãy số Cho dãy số nguyên gồm N phần tử A1, A2, …, AN. Yêu cầu: Tìm giá trị và vị trí của phần tử lớn nhất trong dãy số, cuối cùng tính và in ra trung bình cộng của các số có giá trị lẻ ở vị trí chẵn trong dãy. Dữ liệu: Vào từ tệp văn bản SEQUENCE.INP, gồm 2 dòng: Dòng 1: chứa số nguyên N (1 ≤ N ≤ 106); Dòng 2: chứa N số nguyên A1, A2, ... AN (1 ≤ Ai ≤ 106). Ghi cách nhau một dấu cách. Kết quả: Ghi ra tệp văn bản SEQUENCE.OUT, gồm 2 dòng: Dòng 1: giá trị của phần tử lớn nhất tiếp theo đó là một dấu cách và vị trí của phần tử đó Dòng 2: giá trị trung bình cộng của các số có giá trị lẻ ở vị trí chẵn trong dãy (Kết quả làm tròn đến 2 chữ số thập phân). Ví dụ: SEQUENCE.INPSEQUENCE.OUT 7 3 2 6 7 23 25 4040 7 16.00 Ràng buộc: Có 50% số test ứng với 50% số điểm của bài có 1 ≤ N ≤ 103; Có 30% số test ứng với 30% số điểm của bài có 103 ≤ N ≤ 105; Có 20% số test ứng với 20% số điểm của bài có 105 ≤ N ≤ 106. |