整数连接、几里得算法、尼姆博弈.docVIP

  • 30
  • 0
  • 约3.75千字
  • 约 7页
  • 2016-12-02 发布于贵州
  • 举报
整数连接、几里得算法、尼姆博弈

设有n个正整数,将他们连接成一排,组成一个最大的多位整数。例如:n=3时,3个整数12,345,678,连成的最大整数为 想法1:根据第一位来比,否则比第二位?特例:121,12或者123,12 王艳欣:先把所有整数位数统一,再从大到小排序。 想法2:所以可能情况列举出来?时间复杂度:O(n!) (结合起来:先总体上排序,排序的标准根据这两个数组成数的大小(大的在前,小的在后),时间复杂度:O(n2),甚至可改进到O(nlog2n)。(不好证明,但是可测试一些特殊数据,如果通过基本上就OK了。) ===============题目要求是n个数,得两两比较============= /* 3 13 312 343 4 7 13 4 246 */ #include stdio.h #include string.h /* 转化成字符串格式来比较 */ int str_cmp(char s1[],char s2[]) { char t1[81]=,t2[81]=; strcat(t1,s1); strcat(t1,s2); strcat(t2,s2); strcat(t2,s1); return(strcmp(t1,t2)); } void main() { int num[20],n,i,j; /* 假定不超过

文档评论(0)

1亿VIP精品文档

相关文档