Giải thuật: Code C#, tối ưu kí tự

Trong kỳ thực tập của môn học, thầy giáo đã cho các bạn sinh viên tự phân chia nhóm và các nhóm cũng đã nhận được đề tài để làm. Và giờ là thời gian để các bạn nộp báo cáo đề tài đến cho thầy giáo. Để nộp báo cáo lên hệ thống của nhà trường, các nhóm sinh viên cần phải có mật khẩu để truy cập vào hệ thống. Nhưng thầy giao vốn dĩ là người đam mê các bộ phim trinh thám, nên thầy không cung cấp mật mã trực tiếp, mà cung cấp một dãy số và kèm theo hướng dẫn, và yêu cầu các bạn sinh viên dựa vào dãy số này để tìm ra mật khẩu để truy cập vào hệ thống. Đây là nội dung thầy cung cấp:

Cho danh sách gồm 9 số:

3 số đầu tiên trong danh sách được biểu diễn dưới dạng nhị phân

3 số tiếp theo trong danh sách được biểu diễn dưới dạng bát phân

3 số tiếp theo trong danh sách được biểu diễn dưới dạng thập lục phân

Với 3 chữ số đầu tiên ( nhị phân ), hãy tìm ra số không phải là nhỏ nhất , cũng không phải là lớn nhất ( A )

Với 3 số tiếp theo ( bát phân ), hãy tìm ra số không phải là nhỏ nhất , cũng không phải là lớn nhất ( B )

Với 3 số tiếp theo ( thập lục phân ), hãy tìm ra số không phải là nhỏ nhất , cũng không phải là lớn nhất ( C )

Sau đó chuyển đổi số A, B, C thành số thập phân và nhân lại với nhau. Và giá trị A x B x C ( dưới dạng chuỗi số ) tìm được sẽ là mật khẩu để truy cập hệ thống. Hãy cùng giúp các bạn sinh viên điều tra mật khẩu để các bạn sinh viên nộp bài và tận hưởng kì nghỉ hè thú vị nào

Ví dụ:

Cho danh sách gồm 9 số: ( 1339297734 ) 1001111110101000000111111000110, ( 1435054308 ) 1010101100010010011000011100100, ( 1362014843 ) 1010001001011101011001001111011, ( 1565661695 ) 13524414777, ( 1754466184 ) 15044603610, ( 1890735293 ) 16054452275, ( 1641284363 ) 61D4030B, ( 1155045378 ) 44D89802, ( 1303348530 ) 4DAF8532

Chúng ta có số A là (1362014843) - 1010001001011101011001001111011

Chúng ta có số B là (1754466184) - 15044603610

Chúng ta có số C là (1303348530) - 4DAF8532

Kết quả A x B x C là 1362014843 x 1754466184 x 1303348530 = “3114493356766134202258605360”

Bạn cần thực hiện các công việc sau:

Tiến hành lập trình để nhập ký tự số (chuỗi s), sau đó viết chương trình để trả về giá trị

Ví dụ lời gọi chương trình:

new ChallengeClass().FindCode(“1001111110101000000111111000110, 1010101100010010011000011100100, 1010001001011101011001001111011, 13524414777, 15044603610, 16054452275, 61D4030B, 44D89802, 4DAF8532”)

Ràng buộc:

  • Gồm có 9 phần tử trong chuỗi số nhập vào
  • Các phần tử dưới dạng thập phân là số nguyên dương dưới dạng thập phân
  • Các phần tử dưới dạng thập phân nằm trong vùng [1… 2147483647]

Bạn đã suy nghĩ được gì rồi?

2 Likes

This topic was automatically closed after 193 days. New replies are no longer allowed.

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?