乙级的题目训练主要用来熟悉编程语言的语法和形成良好的编码习惯和编码规范。从小白开始逐步掌握用编程解决问题。
PAT乙级BasicLevelPractice 1070 结绳
题设要求将一些一段一段的绳子串连起来, 但是每次串连的时候需要把两段绳子都对着折后套接在一起。要求能够串连出的最大长度。
这意味着进行一次串连,两端绳子的长度都会减半, 一段绳子参与串连的次数越多(串连成新的后再去与其他绳子串连,然后再去串连,如此重复)最终能提供的长度就约短。
这意味着越长的绳子最好放在越后面进行串连,这样串连的次数会更少,能贡献的长度就越长。
所以这道题就是将给定的各段绳子长度进行升序排列, 然后按排序后顺序进行串连计算最终长度。