We have a group of N items (represented by integers from 1 to N), and we know that there is some total order defined for these items. You may assume that no two elements will be equal (for all a, b: a<b or b<a). However, it is expensive to compare two items. Your task is to make a number of comparisons, and then output the sorted order. The cost of determining if a < b is given by the bth integer of element a of costs (space delimited), which is the same as the ath integer of element b. Naturally, you will be judged on the total cost of the comparisons you make before outputting the sorted order. If your order is incorrect, you will receive a 0. Otherwise, your score will be opt/cost, where opt is the best cost anyone has achieved and cost is the total cost of the comparisons you make (so your score for a test case will be between 0 and 1). Your score for the problem will simply be the sum of your scores for the individual test cases.
ATViewer is a component for Delphi/C++Builder, which allows to view files of various types. There is no edit possibility, just quick view - so it s useful to implement "View file" feature in your Delphi/C++Builder application.
The following view modes are implemented:
Text, Binary, Hex, Unicode: all files, of unlimited size. Plain file dump is shown. Used ATBinHex component: only visible part of file is loaded into memory. Modes are suitable for huge files and files of unknown type.
RTF/UTF-8: RTF and UTF-8 encoded texts. File is shown using RichEdit control.
Image: all general image formats: BMP JPG ICO GIF PNG... File is shown using ATImageBox component.
Multimedia: all file types supported by MS Windows Media Player: AVI MPEG WMV MP3... File is shown using WMP ActiveX control.
Internet: all file types supported by MS Internet Explorer: HTML XML DOC XLS... File is shown using MSIE ActiveX control.
Plugins: all files supported by Total Commander Lister plugins.
漢諾塔!!!
Simulate the movement of the Towers of Hanoi puzzle Bonus is possible for using animation
eg. if n = 2 A→B A→C B→C
if n = 3 A→C A→B C→B A→C B→A B→C A→C