Hãy viết chương trình để tính tổng: S = 12 + 32 + 52 + …+ (2n – 1)2Bài 1. Tính tổng Cho một số nguyên dương N. Yêu cầu: Hãy viết chương trình để tính tổng: S = 12 + 32 + 52 + …+ (2n – 1)2 Dữ liệu: Vào từ tệp văn bản SUM.INP chứa một số nguyên N (1 ≤ N ≤ 106). Kết quả: Ghi vào tệp văn bản SUM.OUT một số nguyên là kết quả tìm được. Ví dụ: SUM.INPSUM.OUT 335 Ràng buộc: Có 30% số test ứng với 30% 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 ≤ 104; Có 40% số test ứng với 40% số điểm của bài có 104 ≤ N ≤ 106. Bài 2. Ước xâu Cho một xâu S chỉ gồm các kí tự chữ cái in thường, xâu X được gọi là ước của xâu S nếu xâu X có độ dài ngắn nhất và khi ghép một số lần X ta được xâu S. Ví dụ: S = “abababab” thì ước của nó là X = “ab” S = “aaaaaa” thì ước của nó là X = “a” S = “abc” thì ước của nó là X = “abc” Yêu cầu: Hãy tìm xâu X là ước của xâu S. Dữ liệu: Vào từ tệp văn bản DIVISORSOFSTRINGS.INP gồm một dòng chứa xâu S. Kết quả: Ghi ra tệp văn bản DIVISORSOFSTRINGS.OUT xâu X là ước của xâu S Ví dụ: DIVISORSOFSTRINGS.INPDIVISORSOFSTRINGS.OUT ababababab abcabc 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á 50 kí tự. Trang 2 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 kí tự. Có 40% số test ứng với 40% số điểm của bài có độ dài xâu S không quá 255 kí tự. Bài 3. Đếm chữ số Cho dãy số nguyên A1, A2, …, AN và một số nguyên K. Yêu cầu: Hãy đếm số lần xuất hiện của chữ số K trong dãy A đã cho. Dữ liệu: Vào từ tệp văn bản COUNTDIGIT.INP gồm 2 dòng: Dòng 1: chứa 2 số nguyên N và K (1 ≤ N ≤ 105, 1 ≤ K ≤ 9); Dòng 2: chứa N số nguyên A1, A2, ..., AN (1 ≤ Ai ≤ 103). Cách nhau một dấu cách. Kết quả: Ghi ra tệp văn bản COUNTDIGIT.OUT một dòng chứa kết quả của bài toán. Ví dụ: COUNTDIGIT.INPCOUNTDIGIT.OUT 5 1 11 12 13 14 156 4 0 0 10 20 304 |