Thứ Năm, 3 tháng 12, 2015

LỜI NHẮN NHỦ TRƯỚC LÚC ĐI THI

KINH NGHIỆM THI CỬ


Các cuộc thi là nơi để bạn chửng tỏ trình độ và khả năng cuả mình. Công sức học tập bấy lâu chỉ quyết định trong 3 tiếng làm bài thi. Do đó, kinh nghiệm thứ không thể thiếu nếu muốn đạt kết quả tốt.

1.     Kiến thức
Cuộc thi nào cũng đòi hỏi kiến thức trong một miền giới hạn nhất định, và hãy đảm bảo rằng bạn đã chuẩn bị tốt những kiến thức đó. Các cuộc thi lớn thường có lượng kiến thức giới hạn không hề nhỏ. Do đó trước khi thi bạn phải tạo cho mình một cái nhìn tổng quát về lượng kiến thức đã có.

Cần chú ý rằng việc bổ sung ,tìm hiểu kiến thức trong quá trình học tập khác với  trong quá trình chuẩn bị cho kì thi. Việc vùi đầu bổ sung kiến thức mới ngay trước kì thi là hoàn toàn không nên. Vì như thế chúng ta sẽ bị ảnh hưởng bởi lượng kiến thức đó và làm lu mờ đi một lượng lớn kiến thức đã thu thập được bấy  lâu.

2.     Tâm
Nhiều người thường nói nào là trước ngày thi không nên xem nhiều phim, không được chơi game, nghe nhạc Nhưng những hạn chế này chỉ làm cho bạn cảm thấy thêm  sức ép mà thôi. Trước ngày thi khỏang 2 ngày, bạn cứ làm những bạn thích và đôi lúc   cần phải quên đi việc đối mặt với thi trước mắt. Cố gắng tạo một tâm lí thoải mái nhất.

Bạn cũng đừng quá lo về lượng kiến thức hao hụt khi bạn giải trí. đối với môn Tin học, chúng ta không học theo kiểu “học thuộc lòng”, vì thế kiến thức không thể mất đi  trong ngày một ngày hai được.

3.     Cách làm bài
đối với môn Tin, sẽ có  180 phút để làm 3 bài thi. Khi cầm một tờ đề, những phút  đầu tiên, bất cứ ai cũng sẽ thấy hồi hộp. Hãy đọc bài đầu tiên (vì đây thường là bài dễ,    cho học sinh kiếm điểm). Nếu vẫn chưa lấy lại được bình tĩnh cần thiết thì có thể code cấu trúc form cho chương trình, rồi tạo trước file input.
Thực hiện làm từng bài theo chiến thuật: bài dễ làm trước, khó làm sau”; nguyên tắc làm bài nào chắc chắn bài đó”.

Việc phân bố thời gian để giải quyết 3 bài trong 180 phút cũng cực kì quan trọng.   Bài 1 thường bài cho điểm nên cố gắng hoàn thành trong thời gian càng ngắn càng tốt.   Hai bài còn lại mỗi bài thường dành 10 - 15 phút suy nghĩ để tìm ra thuật tóan tốt. Nếu không được tìm thì chuyển sang hướng cài đặt Duyệt ăn 60% số điểm  (đối với môn tin  học thì mỗi bài giới hạn 60% số test với dữ liệu nhỏ và các bạn thể ăn được số test này với thuật toán Duyệt nếu cài đặt khéo). Sau đó nếu còn dư thời gian có thể quay lại cải tiến tiếp, phải luôn luôn cải tiến chương trình cho đến khi nào hết thời gian, cố gắng ăn càng nhiều test, đúng càng nhiều trường hợp càng tốt. Chưa cần biết các test hay trường hợp     đó có mang lại nhiều điểm hay  không.
đặc biệt chú ý đến việc đặt tên file chương trình và file INPUT, OUTPUT. Nên làm những việc này trước khi tiến hành lập trình. Nên lập trình trực tiếp bằng Free Pascal và để chế độ báo
các lỗi như tràn mảng hay tràn bộ nhớ. Chú ý các giới hạn của đề bài để khai báo mảng hay biến số.
Và khi thời gian thi còn lại 10 phút, nên kiểm tra lại mọi thứ để đảm bảo không có sai sót đáng tiếc nào về những file sắp ghi lên đĩa.
Các bạn nên luyện tập cách làm trên với các đề thi thử để tránh lúng túng trong các kì thi quan trọng.
Kinh nghiệm thi cử

Làm bài thật nhanh
Suy nghĩ thì phải cẩn thận, nhưng khi đặt tay xuống làm bài thì phải làm bài thật nhanh, không chần chừ do dự. Nên nhớ đây là một yếu tố rất quan trọng, nếu không nhiều khả năng sẽ bị thiếu thời gian! Luyện tập làm bài nhanh mỗi khi có thể để đến khi đi thi sẽ quen.

đọc kỹ và suy nghĩ tất cả các bài trước khi làm
Nên dành một khoảng thời gian để suy nghĩ tất cả các bài toán, sau đó mới quyết định sẽ làm bài nào trước. Có rất nhiều trường hợp, một bài toán tưởng chừng đơn giản nhưng đến khi làm gần xong mới phát hiện là bài khó. Vì vậy cần tỉnh táo tránh lãng phí thời gian.

Làm bài dễ trước
Hoàn thành bài dễ trước để đảm bảo một số điểm cho mình và tạo cảm giác yên tâm khi làm những bài còn lại.

Kiểm tra mỗi bài sau khi làm xong
Sau khi làm xong mỗi bài, cần phải kiểm tra lại chương trình trước khi chuyển sang bài khác.
để kiểm tra chương trình, cách tốt nhất là test thật nhiều. Có thêm một test đúng, xác suất đúng đắn của chương trình sẽ tăng lên đáng kể.
Dùng các test kích thước nhỏ, tự sinh ra để kiểm tra tính đúng đắn của thuật toán; các test lớn, nhận giá trị lớn nhất và giá trị ngẫu nhiên để kiểm tra thời gian thực hiện của thuật toán, phát hiện các lỗi như range check, stack overflow, arithmetic overflow.
Có những bài toán mà có thể kiểm tra kết quả một cách đơn giản (ví dụ bài Dò mìn). Khi đó đừng ngại viết chương trình tạo test hoặc chương trình kiểm tra kết quả nếu cần thiết.
Với những bài toán mà có thuật toán đúng đắn rất đơn giản (tuy nhiên thời gian thực hiện lớn hơn), hãy viết một chương trình như vậy dùng để kiểm tra kết quả. Chẳng hạn, bài toán cặp điểm gần nhất: cho N điểm trên mặt phẳng, tìm hai điểm có khoảng cách gần nhất. Dùng chương trình O(N2) để so sánh với chương trình O(NlogN), nếu hai chương trình cho kết quả như nhau ở các bộ test thì xác suất đúng đắn của chương trình O(NlogN) là rất cao. Tương tự, nếu có hai phương pháp khác nhau nhiều để giải bài toán mà cùng cho kết quả như nhau thì xác suất đúng của chương trình là tương đối cao.

đọc kỹ đề bài
đọc lại một đề bài nhiều lần, đọc cả trước khi làm, sau khi làm xong, phát hiện xem mình có nhầm lẫn, thiếu sót chi tiết gì không!
Sửa lỗi chương trình
Khi chương trình chạy cho ra kết quả sai, cần sửa lỗi (debug) chương trình. Cần tận dụng hiệu quả các công cụ debug của Free Pascal như watches, break point, sử dụng tốt các phím tắt F4, F7, F8. Thông thường chương trình sẽ bị một vài lỗi nhỏ như viết sai tên biến trong một biểu thức, thiếu một đoạn xử lý,…
Có thể xảy ra trường hợp phát hiện cả thuật toán sai, nhất là đối với những bài có thuật toán đúng đắn thì điều này là hoàn toàn có thể. Khi đó đừng hốt hoảng! Cần bình tĩnh tính toán xem xác suất đúng đắn của chương trình có cao không, có nên làm tiếp bài toán đó hay không? đừng bao giờ để bị vướng vào một bài toán quá lâu, nếu thấy lo lắng vì đã dành nhiều thời gian cho một bài mà vẫn cho kết quả sai, hãy tạm thời chuyển sang bài khác.
Trong trường hợp cần thay đổi toàn bộ chương trình, nhớ backup chương trình cũ vào một bản khác, phòng khi cần sử dụng lại.

Phong cách viết chương trình
Phong cách viết chương trình là điều rất quan trọng khi đi thi. Với phong cách viết chương trình tốt sẽ có lợi thế hơn. Nhưng điều này lại chỉ có thể có khi luyện tập nhiều. Phong cách viết chương trình tốt không có nghĩa là những cách viết để cho chương trình chạy nhanh, mà là đảm bảo để làm bài nhanh, sửa lỗi nhanh, giảm xác suất sai của chương trình và giảm xác suất nhầm lẫn cho người viết.

đừng đòi hỏi perfect
Trong trường hợp không thể nghĩ ra thuật toán đúng đắn cho một bài toán (hoặc bản thân bài toán cũng không có thuật toán đúng đắn, điều này rất có thể xảy ra trong kỳ thi quốc gia), cố gắng tìm cách đạt được một số điểm nhất định. Một chương trình đạt 80 hay 90 điểm hầu như không khác gì nhiều so với một chương trình perfect. đôi khi không đáng để viết thêm một đoạn chương trình rất dài chỉ để đạt thêm 10-20 điểm, nhưng đôi khi chỉ cần thêm một hai dòng cận hay điều kiện thì thậm chí có thể đạt thêm một số điểm rất lớn. điều quan trọng là cần bình tĩnh để đánh giá những gì nên làm và không nên làm.

đạt được 50% số điểm
Các bài toán thường đưa ra 50% (hoặc 30-40%) số test có giới hạn nhỏ, có thể dùng những thuật toán đơn giản hoặc duyệt. Tốt nhất nên thêm một điều kiện để kiểm tra nếu dữ liệu thuộc giới hạn này thì dùng chương trình đơn giản hoặc duyệt để chạy.

Sao lưu bài làm
Thỉnh thoảng hãy sao lưu bài làm vào nhiều thư mục, nhiều ổ đĩa khác nhau phòng khi có sự cố kỹ thuật. Hãy tạo 3 thư mục cho 3 bài làm. Lưu các bài sẽ nộp vào một nơi riêng, tránh nộp nhầm bài.

đánh giá, quyết định thông minh
Có nhiều thứ cần đánh giá: mức độ khó của mỗi bài, xác suất đúng đắn của thuật toán nghĩ ra, thời gian cần thiết để làm một bài, kiểm tra kết quả và tạo test có khó không? Từ đó quyết định làm bài nào trước, có nên tiếp tục cải tiến một bài không, cải tiến như thế nào sẽ hiệu quả hơn, kiểm tra chương trình như thế nào để chắc chắn nhất. Hãy linh hoạt
Khi lập trình
Khi đi thi thường sẽ sử dụng compiler và IDE Free Pascal hoặc C++

đặt chỉ dẫn bộ nhớ
Trong trường hợp chương trình lặp vào thủ tục đệ quy nhiều lần, cần tăng kích thước stack bằng cách đặt chỉ dẫn bộ nhớ:
{$M 2000000,0,2000000}

Phong cách viết chương trình
Nếu chương trình sử dụng ít biến, có thể đặt tên các biến, mảng ngắn gọn đơn giản để tăng tốc độ làm bài, ví dụ a, b, x, y,… mảng quy động là f. Tuy nhiên nếu chương trình sử dụng nhiều biến, các biến mang ý nghĩa khác nhau thì hãy đặt tên các biến dài và mang ý nghĩa của chúng để tránh nhầm lẫn. Nên nhớ việc nhầm lẫn giữa các biến là vấn đề rất khó chịu. Nên đặt tên các biến bằng tiếng Việt và viết chương trình bằng chữ in thường để tăng tốc độ làm bài.
Giữa các câu lệnh, nên xuống dòng để tận dụng các công cụ debug của Free Pascal như các phím F4, F7, F8.

Sử dụng chuỗi
Nếu cần sử dụng chuỗi có độ dài vượt quá 255 ký tự cần đặt chỉ dẫn {H+} ở đầu chương trình.

Cắt dán
để sử dụng các phím tắt Ctrl-C,X,V cho cắt dán chữ như Windows, chọn Options – Keyboard & mouse – đánh dấu Microsoft convention.




Chúc các bạn thành công!

Không có nhận xét nào:

Đăng nhận xét