Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 21 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
21
Dung lượng
685,26 KB
Nội dung
Faculty of Computer Science and Engineering Department of Computer Science Bài Tập Lớn EASTER BUNNY Giới thiệu Ngày xửa ngày xưa, từ trước Prometheus đem lửa thắp sáng cho nhân loại, ông kẹ Pitch Black nỗi ám ảnh gieo rắc sợ hãi cho loài người đêm Để giúp cho nhân loại vượt nỗi sợ hãi để tìm đến hy vọng, tình yêu hạnh phúc, Man on the Moon tập hợp vệ thần để gieo rắc hạt giống niềm tin vào tâm hồn người họ đứa trẻ Năm vệ thần chọn gồm có Tooth Fairy, Santa Claus, Easter Bunny, Sandman Jack Frost Từ đó, Pitch Black bị đẩy lùi vào bóng tối gầm giường Nhưng nỗi sợ hãi đứa trẻ vào đêm chưa đủ để thỏa mãn tham vọng Pitch Black Hắn âm thầm thực âm mưu cướp niềm tin vào phép màu, vào hạnh phúc trẻ thơ Từ đó, lần nhấn chìm giới vào bóng đêm sợ hãi Pitch Black thuộc hạ Nightmare công vào nơi nàng tiên Tooth Fairy cướp hết sữa trẻ em với ký ức niềm vui hạnh phúc chứa Trong lúc vệ thần chiến đấu Pitch Black, vương quốc Bunnymund, thỏ gấp rút tô màu cho trứng phục sinh Để tiện cho việc tô màu, trứng phục sinh xếp thành 03 hàng Những thỏ tô màu cho trứng, đồng thời Pitch Black không ngừng gửi thuộc hạ đến phá hoại Nếu đến cuối cùng, màu trứng phục sinh trùng khớp với lời tiên tri hát ảo thuật gia Méliès vệ thần giành chiến thắng Page 1/21 CuuDuongThanCong.com https://fb.com/tailieudientucntt Faculty of Computer Science and Engineering Department of Computer Science Yêu cầu Trong tập lớn này, sinh viên cung cấp file chứa liệu nhập Trong bao gồm thơng tin màu sắc trứng phục sinh, với kiện xảy lúc chuẩn bị trứng Chương trình xuất hình thơng tin màu sắc trứng sau trình chuẩn bị kết thúc Các liệu nhập xuất mà sinh viên phải xử lý đểu biểu diễn dạng danh sách liên kết (linked list) Chi tiết mô tả liệu nhập công việc sinh viên phải làm nêu phần Dữ liệu nhập Dữ liệu nhập chương trình chứa file mang tên input.txt File chứa thông tin sau: 100_100_100 200_200_000 001_003_012 ; Thông tin hàng trứng 130_100_150 200_200_010 ; ban đầu 100_110_100 100_200_030 ; 0_100_001_010_1 ; Thông tin kiện xảy Trong đó, thành phần liệu nhập ngăn cách dấu chấm phẩy với thứ tự sau: 03 thành phần đầu tương ứng với khởi tạo 03 hàng trứng ban đầu Mỗi hàng trứng danh sách màu sắc trứng nằm hàng Màu sắc trứng mơ tả dạng R_G_B với R, G, B gồm ký số có giá trị từ 000-999 Giữa trứng ngăn cách khoảng trắng Mỗi hàng chứa tối đa 2100 trứng Page 2/21 CuuDuongThanCong.com https://fb.com/tailieudientucntt Faculty of Computer Science and Engineering Department of Computer Science Thành phần cuối danh sách kiện xảy theo thứ tự thời gian Các kiện cách khoảng trắng mô tả theo bảng mã kiện sau (các mã kiện không theo mô tả bị bỏ qua) Mã kiện Ý nghĩa 0_R_G_B_T Một trứng E.B tô màu xong thêm vào cuối hàng 1_R_G_B_P_T Jack Frost đổi màu trứng 2_R_G_B Nightmare công làm phai màu trứng 3_R_G_B Ông kẹ Pitch Black vào lấy cắp trứng 4_R_G_B_M Lấy trứng kì diệu để phục sinh cho Sandman 5_R_G_B_P Nhóc tiên Tooth Baby làm xáo trộn màu trứng 6_R_G_B Sophie giấu thỏ vào bên phải trứng gần giống 7_S Toothiana đưa trứng trạng thái khứ 8_K Các thỏ đào hang cất giấu trứng khỏi The Monkey King 9_C Bí mật Santa Claus Ví dụ 1: Với liệu nhập 100_100_100 200_200_000 001_003_012 ; 130_100_150 200_200_010 ; 100_110_100 ; 0_100_001_010_1 ; Ban đầu hàng trứng có 03 trứng, hàng trứng thứ hai có 02 trứng hàng trứng cuối có 01 trứng Trong q trình chuẩn bị trứng có kiện xảy Đó kiện, trứng có màu đỏ:100, xanh lá:001, xanh dương:010 thêm vào hàng trứng Page 3/21 CuuDuongThanCong.com https://fb.com/tailieudientucntt Faculty of Computer Science and Engineering Department of Computer Science Hiện thực chương trình Sinh viên thực hàm prepare có prototype sau: void prepare (EEList*& top, EEList*& middle, EEList*& bottom, eventList* pEvent); Trong đó: a) EEList danh sách liên kết chứa thông tin màu trứng, khai báo sau: struct EEList { int nCodeR; int nCodeG; int nCodeB; EEList* pNext; }; Danh sách gồm có thơng tin mã màu trứng gồm có nCodeR (mã màu đỏ), nCodeG (mã màu xanh lá), nCodeB (mã màu xanh dương) Danh sách truyền vào ban đầu danh sách tất trứng nhập vào từ file input chưa xử lý Trong trình thực sinh viên thay đổi danh sách theo thông tin mô tả Phần Có ba trỏ trỏ đến ba danh sách liên kết EEList truyền vào tương ứng với ba hàng trứng trên, b) eventList danh sách liên kết chứa thông tin kiện, khai báo sau: struct eventList { int nEventCode; eventParam* pEventParamFirst; eventList* pNext; }; Danh sách gồm có mã kiện trỏ trỏ đến danh sách thông số tương ứng với mã kiện khác (xem Phần 3) Page 4/21 CuuDuongThanCong.com https://fb.com/tailieudientucntt Faculty of Computer Science and Engineering Department of Computer Science Hiện thực danh sách trứng phục sinh (Easter Eggs – EE) Khởi tạo 03 danh sách EE tương ứng với 03 hàng trứng từ file liệu nhập mô tả Phần Những trứng có màu hợp lệ có giá trị mã màu R_G_B với R, G, B nằm khoảng 000-255 đưa vào danh sách EE Ví dụ 2: Với liệu nhập 100_100_100 ; 130_100_150 ; 100_110_100 201_202_203 999_000_000 ; ; Hàng trứng có trứng có mã màu RGB tương ứng {100,100,100} Hàng trứng có trứng có mã màu RGB {130, 100,150} Hàng trứng có hai trứng mang mã màu hợp lệ {100, 010,001} {201,202,203} Trong trường hợp nào, trứng hàng thỏ E.B xếp lại dồn bên trái Điều vị trí trứng có thứ tự đánh từ trái sang phải có số bắt đầu Xét ví dụ 2, trứng {100,100,100} nằm hàng có thứ tự 1; hàng cùng, trứng {100,010,001} mang thứ tự trứng {201,202,203} mang thứ tự Trong suốt trình chuẩn bị trứng cho ngày lễ có kiện xảy làm thay đổi danh sách Các kiện cụ thể sau: S0) Các thỏ hoàn tất tô màu cho trứng thêm trứng vào cuối 03 hàng trứng ban đầu Mã kiện có dạng 0_R_G_B_T Trong R,G,B gồm ký số có giá trị từ 000-999 cho biết màu trứng cần thêm T số nguyên cho biết hàng trứng thêm vào Các giá trị T thuộc {1,2,3} Page 5/21 CuuDuongThanCong.com https://fb.com/tailieudientucntt Faculty of Computer Science and Engineering Department of Computer Science tương ứng với {hàng cùng, hàng giữa, hàng cùng} Quả trứng với màu hợp lệ thêm vào cuối hàng trứng Ví dụ 3: Với liệu nhập 100_100_100 ; 130_100_150 ; 100_110_100 ; 0_123_234_012_3 ; Ứng với mã kiện 0_123_234_012_3, trứng có mã màu {123,234,012} thêm vào cuối hàng trứng sau: 100_100_100 ; 130_100_150 ; 100_110_100 123_234_012 ; Ví dụ 4: Với liệu nhập 100_100_100 ; 130_100_150 ; 100_110_100 ; 0_999_234_012_3 ; Ứng với mã kiện 0_999_234_012_3, màu trứng giá trị hợp lệ, trứng không thêm vào hàng S1) Jack Frost vệ thần nghịch ngợm Để trêu chọc Easter Bunny, Jack Frost cố tình đổi màu trứng Mã kiện có dạng 1_R_G_B_P_T Trong đó, P số nguyên dương vị trí trứng bị đổi màu hàng T Màu trứng xác định R,G,B Các giá trị R,G,B, T định nghĩa giống mục S0 Nếu vị trí P không tồn hàng T, Jack Frost không đổi màu trứng danh sách trứng giữ nguyên Page 6/21 CuuDuongThanCong.com https://fb.com/tailieudientucntt Faculty of Computer Science and Engineering Department of Computer Science Ví dụ 5: Với liệu nhập 100_100_100 ; 130_100_150 ; 100_110_100 ; 1_123_234_012_1_3 ; Ứng với kiện 1_123_234_012_1_3, Jack Frost thay đổi màu trứng {100,110,100} thành {123,234,012} Lưu ý: Jack Frost vệ thần bất quy tắc, màu sắc trứng bị thay đổi không cần màu sắc hợp lệ mà giá trị khoảng 000-999 Ví dụ 6: Với liệu nhập 100_100_100 ; 130_100_150 ; 100_110_100 ; 1_999_234_012_1_3 ; Ứng với kiện 1_999_234_012_1_3, Jack Frost thay đổi màu trứng {100,110,100} thành {999,234,012} S2) Để ngăn cản khơng cho thỏ hồn thành vẽ trứng trước lễ Phục Sinh, ông kẹ Pitch Black cử bọn Nightmare công vương quốc Bunnymund Mỗi đợt công, bọn Nightmare làm tất số trứng bị phai màu Mã kiện có dạng 2_R_G_B Màu trứng bị giảm lượng R,G,B tương ứng với ba số R,G,B ban đầu Màu trứng bị giảm 000 Ví dụ 7: Với liệu nhập 100_100_100 ; 130_100_150 ; Page 7/21 CuuDuongThanCong.com https://fb.com/tailieudientucntt Faculty of Computer Science and Engineering Department of Computer Science 100_110_100 ; 2_100_100_100 2_100_000_000 ; Ở đợt công 2_100_100_100, Nightmare làm phai màu tất trứng: 000_000_000 ; 030_000_050 ; 000_010_000 ; Sau đợt công thứ hai 2_100_000_000, màu trứng tiếp tục bị phai danh sách EE trở thành: 000_000_000 ; 000_000_050 ; 000_010_000 ; S3) Biết lời tiên tri Méliès chiến thắng vệ thần, ông kẹ Pitch Black vào vương quốc Bunnymund để lấy cắp trứng nhằm ngăn lời tiên tri trở thành thật Mã kiện có dạng 3_R_G_B, với R,G,B số nguyên định nghĩa mục S0 Do Pitch Black hết lời tiên tri biết màu gần trứng xác định giá trị R,G,B trên, lựa chọn trứng có màu gần giống lấy khỏi hàng trứng Mức độ giống hai trứng tính khoảng cách Mahatan sau: mdiff({R1,G1,B1},{R2,G2,B2}) = |R1-R2| +|G1-G2| + |B1-B2| Hai trứng có màu gần giống khoảng cách chúng nhỏ Nếu có nhiều trứng gần giống với lời tiên tri, để tiết kiệm thời gian, Pitch Black lấy cắp trứng gần theo thứ tự ưu tiên hàng trứng (từ xuống) vị trí từ trái sang phải hàng Ví dụ 8: Với liệu nhập 100_100_100 ; Page 8/21 CuuDuongThanCong.com https://fb.com/tailieudientucntt Faculty of Computer Science and Engineering Department of Computer Science 130_100_150 ; 100_110_100 ; 3_100_100_100 ; Pitch Black lấy cắp trứng {100,100,100} với mdiff = nhỏ nhất: ; 130_100_150 ; 100_110_100 ; Ví dụ 9: Với liệu nhập 100_100_100 ; 130_100_150 ; 100_110_100 ; 3_100_105_100 ; Pitch Black tìm hai trứng {100,100,100} {100,110,100} với mdiff = nhỏ nhất, lúc lựa chọn trứng gần theo thứ tự ưu tiên {100,100,100} lấy khỏi hàng trứng ; 130_100_150 ; 100_110_100 ; S4) Trong lúc đánh với Pitch Black, thần ngủ Sandman mắc bẫy bị giết chết Vô đau buồn trước chết Sandman, Jack Frost thỏ tập hợp trứng phục sinh để cứu Sandman sống lại Mã kiện có dạng 4_R_G_B_M Trong đó, màu trứng kì diệu truyền thuyết xác định R,G,B số nguyên định nghĩa mục S0 Chỉ trứng gần giống với trứng kì diệu với giá trị mdiff nhỏ ngưỡng quy định M giúp Sandman sống lại Những trứng lấy khỏi hàng trứng giúp hổi sinh Sandman Page 9/21 CuuDuongThanCong.com https://fb.com/tailieudientucntt Faculty of Computer Science and Engineering Department of Computer Science Ví dụ 10: Với liệu nhập 100_100_100 ; 130_100_150 ; 100_110_100 ; 4_100_105_100_10 ; Hai trứng {100,100,100} {100,110,100} với mdiff = < 10 lấy khỏi hàng trứng để hổi sinh Sandman ; 130_100_150 ; ; S5) Nhóc tiên Tooth Baby muốn giúp thỏ vẽ trứng phục sinh Nhưng với tính hậu đậu, Tooth Baby lại làm xáo trộn màu sắc trứng Thay tơ màu cho trứng, nhóc tiên hoán đổi màu trứng với màu có Mã kiện có dạng 5_R_G_B_P cho biết màu sắc vị trí ban đầu hàng trứng mà Tooth Baby định tô màu Tooth Baby làm xáo trộn màu sắc trứng theo quy luật đây: Tooth Baby bắt đầu hoán đổi màu ban đầu với màu trứng vị trí P hàng tương ứng vị trí có tồn hàng, khơng nhóc tiên chuyển xuống hàng Thứ tự ưu tiên từ hàng xuống hàng hàng Nếu vị trí P khơng tồn ba hàng, Tooth Baby không tô màu danh sách EE giữ nguyên Sau đó, Tooth Baby tiếp tục bay đến cho trứng xung quanh hoán đổi màu có với màu trứng vị trí Vốn dĩ thích màu xanh nên nhóc tiên lựa chọn trứng vị trí lân cận theo thứ tự dưới, trên, trái, phải vị trí có thành phần G lớn màu có Q trình hốn đổi màu tiếp tục vị trí khơng tồn Page 10/21 CuuDuongThanCong.com https://fb.com/tailieudientucntt Faculty of Computer Science and Engineering Department of Computer Science Ví dụ 11: Với liệu nhập 100_100_100 100_100_102 100_100_100 ; 130_100_150 100_100_100 100_150_100 100_100_106 ; 100_110_100 130_100_150 100_100_100 100_100_100 ; 5_100_100_200_4 ; Tooth Baby đậu vào trứng {100,100,106} vị trí thứ hàng hoán đổi màu sắc ban đầu với màu trứng 100_100_100 100_100_102 100_100_100 ; 130_100_150 100_100_100 100_150_100 100_100_200 ; 100_110_100 130_100_150 100_100_100 100_100_100; Tiếp theo, nhóc tiên xem xét trứng vị trí {100,100,100}, trái {100,150,100} chọn vị trí theo thứ tự có giá trị G lớn màu có, vị trí trái {100,150,100} hốn đổi với màu có {100,100,106} 100_100_100 100_100_102 100_100_100 ; 130_100_150 100_100_100 100_100_106 100_100_200 ; 100_110_100 130_100_150 100_100_100 100_100_100; Lúc vị trí {100,100,100}, {100,100,100}, trái {100,100,100} phải {100,100,200} có giá trị G nhỏ màu có {100,150,100} nên nhóc tiên Tooth Baby dừng trình xáo trộn màu trứng S6) Khi Pitch Black tập kích vào vương quốc Bunnymund, bé Sophie hóa trang thỏ thành trứng phục sinh giấu vào hàng trứng Mã kiện có dạng 6_R_G_B Trong đó, ba ký số R,G,B định nghĩa mục S0 cho biết màu trứng mà Sophie hóa trang cho thỏ Để không bị phát hiện, cô bé giấu thỏ vào bên phải trứng có màu gần giống (được mô tả Page 11/21 CuuDuongThanCong.com https://fb.com/tailieudientucntt Faculty of Computer Science and Engineering Department of Computer Science mục S3) Nếu ba hàng trứng rỗng, Sophie đặt thỏ vào hàng Ví dụ 12: Với liệu nhập 100_100_100 100_100_102 100_100_100 ; 130_100_150 100_100_100 100_100_104 100_100_106 ; 100_110_100 ; 6_100_100_105 ; Sophie hóa trang thỏ thành trứng có màu {100,100,105} giấu vào vị trí bên phải trứng {100,100,104} với mdiff = độ ưu tiên cao {100,100,106} 100_100_100 100_100_102 100_100_100 ; 130_100_150 100_100_100 100_100_104 100_100_105 100_100_106 ; 100_110_100 ; 6_100_100_105 ; S7) Nàng tiên Toothiana thường có linh cảm q khứ khơng phải lúc xác Những lúc vậy, nàng đưa trạng thái trứng trước khoảng thời gian Mã kiện có dạng 7_S cho biết trạng thái trứng bị lùi S kiện Do phép thuật Toothiana có giới hạn nên nàng thay đổi nửa số trứng hàng (làm tròn lên số trứng số lẻ) Hàng trứng tạo thành cách ghép nửa sau danh sách EE khứ vào cuối nửa đầu danh sách EE Ngoài ra, số kiện S giới hạn Nếu số kiện xảy nhỏ S, hàng trứng đưa trạng thái ban đầu Ví dụ 13: Với liệu nhập 100_100_100 100_100_102 100_100_100 ; 130_100_150 100_100_100 100_100_104 100_100_106 ; Page 12/21 CuuDuongThanCong.com https://fb.com/tailieudientucntt Faculty of Computer Science and Engineering Department of Computer Science 100_110_100 ; 6_100_100_105 7_1 ; Kết kiện 6_100_100_105 100_100_100 100_100_102 100_100_100 ; 130_100_150 100_100_100 100_100_104 100_100_105 100_100_106 ; 100_110_100 ; 6_100_100_105 ; Nửa sau danh sách trứng kiện khứ (danh sách ban đầu) 100_100_102 100_100_100 ; 100_100_104 100_100_106 ; 100_110_100 ; Nửa đầu danh sách trứng 100_100_100 100_100_102 ; 130_100_150 100_100_100 100_100_104 ; 100_110_100 ; Vậy, danh sách EE Toothiana tạo thành 100_100_100 100_100_102 100_100_102 100_100_100; 130_100_150 100_100_100 100_100_104 100_100_104 100_100_106 ; 100_110_100 100_110_100 ; S8) Nhận thấy thỏ hồn tất tơ màu trứng phục sinh, Pitch Black sai The Monkey King phá hoại số trứng Thỏ E.B đạo thần dân vương quốc đào hang đưa trứng xuống giấu Sau The Monkey King bị đánh bại, số trứng lại đưa lên xếp trở lại vào hàng Mã kiện có dạng 8_K K cho biết cách thức thỏ đào hang, bao gồm giá trị K=1 hang đào có cửa K=2 hang đào có cửa vào/ra, cửa vào bị The Monkey King chặn lại rút lui Page 13/21 CuuDuongThanCong.com https://fb.com/tailieudientucntt Faculty of Computer Science and Engineering Department of Computer Science K=3 hang đào có cửa vào/ra Những trứng đưa xuống hang theo thứ tự hàng từ xuống từ trái sang phải hàng Tùy thuộc vào cách thức đào hang mà trứng lấy để xếp lại vào hàng, cụ thể sau K=1 hang có cửa nên trứng đưa vào sau lấy trước K=2 cửa vào bị chặn nên lấy trứng từ cửa ra, trứng đưa vào trước lấy trước K=3 trứng lấy đồng thời từ hai phía cửa hang, trứng lấy từ từ cửa vào đến cửa Sau đó, trứng chia vào ba hàng cho số trứng hàng ln nhỏ hàng Ví dụ 14: Với liệu nhập 100_100_100 100_100_102 ; 130_100_150 100_100_100 ; 100_110_100 ; 8_1 ; Trứng lấy theo thứ tự {100,100,100}, {100,100,102}, {130, 100, 150}, {100,100,100}, {100,110,100} giấu vào hang Cửa hang 100_110_100 100_100_100 130_100_150 100_100_102 100_100_100 Sau The Monkey King rút lui, ứng với K = 1, trứng lấy theo thứ tự xếp lại vào hàng, danh sách EE trở thành 100_110_100 ; 100_100_100 130_100_150 ; 100_100_102 100_100_100 ; Page 14/21 CuuDuongThanCong.com https://fb.com/tailieudientucntt Faculty of Computer Science and Engineering Department of Computer Science Ví dụ 15: Với liệu nhập 100_100_100 100_100_102 ; 130_100_150 100_100_100 ; 100_110_100 ; 8_2 ; Trứng lấy theo thứ tự {100,100,100}, {100,100,102}, {130, 100, 150}, {100,100,100}, {100,110,100} giấu vào hang Cửa vào (bị chặn) 100_110_100 100_100_100 130_100_150 100_100_102 100_100_100 Cửa Sau The Monkey King rút lui, ứng với K = 2, trứng lấy theo thứ tự {100,100,100}, {100,100,102}, {130, 100, 150}, {100,100,100}, {100,110,100} xếp lại vào hàng Danh sách EE trở thành 100_100_100 ; 100_100_102 130_100_150 ; 100_100_100 100_110_100 ; Ví dụ 16: Với liệu nhập 100_100_100 100_100_102 ; 130_100_150 100_100_100 ; 100_110_100 ; 8_2 ; Trứng lấy theo thứ tự {100,100,100}, {100,100,102}, {130, 100, 150}, {100,100,100}, {100,110,100} giấu vào hang Cửa vào 100_110_100 100_100_100 130_100_150 100_100_102 100_100_100 Cửa Sau The Monkey King rút lui, ứng với K = 3, trứng lấy theo thứ tự {100,110,100}, {100,100,100}, {100,100,100}, {100,100,102}, {130, 100, 150} xếp lại vào hàng, danh sách EE trở thành Page 15/21 CuuDuongThanCong.com https://fb.com/tailieudientucntt Faculty of Computer Science and Engineering Department of Computer Science 100_110_100 ; 100_100_100 100_100_100 ; 100_100_102 130_100_150 ; S9) Thật từ lâu Santa Claus giải mã bí mật lời tiên tri Tuy nhiên, Santa bị mù màu lại không muốn cho biết nên xếp lại trứng Vốn thông minh, Santa nhận thấy thành phần màu định trứng hàng tuân theo quy luật chuỗi tăng giảm xếp lại trứng theo thứ tự tăng dần thành phần màu tạo thành hàng trứng lời tiên tri Khi xếp lại trứng, hai trứng có thành phần màu xét trùng nhau, trứng xuất sau bị loại bỏ Mã kiện có dạng 9_C với C số nguyên thuộc {1,2,3} tương ứng với thành phần R,G B Nếu không hàng trứng không tuân theo quy luật hàng trứng không thay đổi Chuỗi tăng giảm tuần tự: chuỗi bao gồm từ phần tử trở lên tuân theo quy luật sau 4 Ví dụ 17: Với liệu nhập 100_001_100 100_004_102 100_002_110 100_004_200 100_003_100 ; 130_100_150 100_100_100 ; 100_110_100 ; 9_2 ; Santa Claus kiểm tra thành phần màu G trứng thấy hàng trứng phù hợp với lời tiên tri Santa xếp lại hàng trứng theo thứ tự tăng dần thành phần màu G Trong đó, trứng {100,004,102} {100,004,200} có thành phần G trùng nhau, trứng {100,004,200} xuất Page 16/21 CuuDuongThanCong.com https://fb.com/tailieudientucntt Faculty of Computer Science and Engineering Department of Computer Science sau bị loại bỏ Những hàng trứng cịn lại khơng theo quy luật giữ nguyên 100_001_100 100_002_110 100_003_100 100_004_102 ; 130_100_150 100_100_100 ; 100_110_100 ; Một số trường hợp đặc biệt E0) Quả trứng có màu {000,000,000} trứng lì lợm khơng cho phép tơ màu lên Do vậy, màu trứng không thay đổi với kiện Nếu tồn trứng trứng lì lợm, công việc tô màu tiếp tục nữa, chương trình kết thúc trả danh sách trứng Ví dụ 18: Với liệu nhập 100_100_100 100_100_102 ; 130_100_150 100_100_100 ; 100_110_100 ; 2_200_200_200 2_100_100_100 3_202_203_204 ; Ở đợt công 2_200_200_200, Nightmare làm phai màu tất trứng, tất trứng biến thành trứng lì lợm, chương trình kết thúc trả danh sách trứng bỏ qua tất kiện sau 000_000_000 000_000_000 ; 000_000_000 000_000_000 ; 000_000_000 ; E1) Trong kiện S3, trứng mà ông kẹ Pitch Black lấy cắp thỏ Sophie hóa trang kiện S6 Pitch Black vô tức giận không quay trở lại lấy cắp trứng Page 17/21 CuuDuongThanCong.com https://fb.com/tailieudientucntt Faculty of Computer Science and Engineering Department of Computer Science Ví dụ 19: Với liệu nhập 100_100_100 100_100_102 100_100_100 ; 130_100_150 100_100_100 100_100_104 100_100_108 ; 100_110_100 ; 6_100_100_105 3_100_100_106 3_100_100_108 ; Danh sách trứng sau Sophie hóa trang giấu thỏ vào hàng 100_100_100 100_100_102 100_100_100 ; 130_100_150 100_100_100 100_100_104 100_100_105 100_100_108 ; 100_110_100 ; Pitch Black lấy cắp trứng {100,100,105} phát thỏ, không quay lại lấy cắp trứng kiện 3_100_100_108 bị bỏ qua Danh sách trứng EE cuối 100_100_100 100_100_102 100_100_100 ; 130_100_150 100_100_100 100_100_104 100_100_108 ; 100_110_100 ; E2) Trong kiện S8, hàng trứng có thỏ Sophie hóa trang kiện S6, thỏ nhảy khỏi hàng Ví dụ 20: Với liệu nhập 100_100_100 100_100_102 ; 130_100_150 100_100_005 ; 100_110_100 ; 6_100_100_099 8_1 ; Sophie hóa trang giấu thỏ vào hàng sau 100_100_100 100_100_099 100_100_102 ; 130_100_150 100_100_005 ; 100_110_100 ; Ở kiện 8_1, thỏ hóa trang nhảy khỏi hàng Sau đó, trứng Page 18/21 CuuDuongThanCong.com https://fb.com/tailieudientucntt Faculty of Computer Science and Engineering Department of Computer Science tiếp tục xử lý mô tả cho kiện S8, danh sách EE cuối 100_110_100 ; 100_100_005 130_100_150 ; 100_100_102 100_100_100 ; Cách dịch thực thi chương trình Sinh viên download file assigment1.zip từ trang Web môn học Khi giải nén file này, có file sau: input.txt Một file input ví dụ main.cpp Chương trình assignment1.cpp Chương trình thực hiển sinh viên defs.cpp Định nghĩa cấu trúc hàm dùng chung Assignment1.pdf Mô tả tập lớn File input.txt file nhập mẫu mô tả phần File main.cpp chương trình khởi tạo, bao gồm hàm viết sẵn sau: main(): chương trình thực thi readFile(): hàm đọc file input display() : hàm xuất liệu hình Lưu ý sinh viên khơng phép thay đổi file main.cpp defs.h thực chương trình Ngồi ra, hàm sinh viên viết khơng xuất liệu hình thực thi Để dịch thực thi chương trình, sinh viên chứa files main.cpp, assignment1.cpp defs.h thư mục; sau cần dịch thực thi file main.cpp Mọi công việc cần phải làm thực file assignment1.cpp, nhiên không cần dịch thực thi file Page 19/21 CuuDuongThanCong.com https://fb.com/tailieudientucntt Faculty of Computer Science and Engineering Department of Computer Science Lưu ý: 1) Sinh viên phải sử dụng danh sách liên kết để lập trình tập, KHÔNG DÙNG MẢNG HOẶC CHUỖI, CÁC BÀI LÀM KHÔNG DÙNG DANH SÁCH LIÊN KẾT SẼ KHƠNG CĨ ĐIỂM 2) Danh sách kiện trỏ pEvent đến phần tử danh sách Sinh viên phải tự viết đoạn mã để truy xuất trực tiếp phần tử danh sách xử lý kiện 3) Thời gian chạy chương trình phải đảm bảo khơng q 5s cho testcase Nộp Khi nộp bài, sinh viên sử dụng account cấp phát hệ thống BK Sakai để nộp qua mạng Sinh viên nộp file assigment1.cpp (tên file phải viết thường) Tất file nộp khác file assignment1.cpp bị tự động xoá chấm File nộp phải file chương trình gốc, sinh viên khơng nén file nộp Thời hạn nộp bài: Thời hạn chót để nộp 23h55 ngày thứ 5, 30/10/2014 Sinh viên phải dùng account hệ thống Sakai để nộp KHÔNG nhận gửi qua mail hình thức khác Bài nộp trễ KHÔNG nhận Xử lý gian lận Bài tập lớn phải sinh viên TỰ LÀM Sinh viên bị coi gian lận nếu: 1) Có giống bất thường mã nguồn nộp Trong trường hợp này, TẤT CẢ nộp bị coi gian lận Do sinh viên phải bảo vệ mã nguồn tập lớn Page 20/21 CuuDuongThanCong.com https://fb.com/tailieudientucntt Faculty of Computer Science and Engineering Department of Computer Science 2) Sinh viên không hiểu mã nguồn viết, trừ phần mã cung cấp sẵn chương trình khởi tạo Sinh viên tham khảo từ nguồn tài liệu nào, nhiên phải đảm bảo hiểu rõ ý nghĩa tất dịng lệnh mà viết Trong trường hợp không hiểu rõ mã nguồn nơi tham khảo, sinh viên đặc biệt cảnh báo KHÔNG ĐƯỢC sử dụng mã nguồn này; thay vào nên sử dụng học để viết chương trình Trong trường hợp bị kết luận gian lận, sinh viên bị điểm cho tồn mơn học (khơng tập lớn) KHƠNG CHẤP NHẬN BẤT KỲ GIẢI THÍCH NÀO VÀ KHƠNG CĨ BẤT KỲ NGOẠI LỆ NÀO! Sau tập lớn nộp, có số sinh viên gọi vấn ngẫu nhiên để chứng minh tập lớn vừa nộp làm - HẾT - Page 21/21 CuuDuongThanCong.com https://fb.com/tailieudientucntt ... Mức độ giống hai trứng tính khoảng cách Mahatan sau: mdiff({R1,G1,B1},{R2,G2,B2}) = |R1-R2| +|G1-G2| + |B1-B2| Hai trứng có màu gần giống khoảng cách chúng nhỏ Nếu có nhiều trứng gần giống với... NÀO! Sau tập lớn nộp, có số sinh viên gọi vấn ngẫu nhiên để chứng minh tập lớn vừa nộp làm - HẾT - Page 21/21 CuuDuongThanCong.com https://fb.com/tailieudientucntt ... vào cuối 03 hàng trứng ban đầu Mã kiện có dạng 0_R_G_B_T Trong R,G,B gồm ký số có giá trị từ 00 0-9 99 cho biết màu trứng cần thêm T số nguyên cho biết hàng trứng thêm vào Các giá trị T thuộc {1,2,3}