java写法
int arr[]={3,123,234}; Set<Integer> set=new HashSet<>(); while (true){ int index1=(int)(Math.random()*arr.length); String s1=String.valueOf(arr[index1]); int index2=(int)(Math.random()*arr.length); String s2=String.valueOf(arr[index2]); int index3=(int)(Math.random()*arr.length); String s3=String.valueOf(arr[index3]); if(!s1.equals(s2)&&!s1.equals(s3)&&!s2.equals(s3)){ String s=s1+s2+s3; set.add(Integer.valueOf(s)); } if(set.size()>=6){ break; } } Integer integer = set.stream().max(Integer::compareTo).get(); System.out.println(set); System.out.println(integer);
python写法:
import random # 从a中取出3个数,随机组合,并找出最大值 a=[3,123,234] b=[] while True: i=str(a[random.randint(0,2)]) j=str(a[random.randint(0,2)]) k=str(a[random.randint(0,2)]) if i==j or i==k or j==k: continue s=i+j+k if s not in b: b.append(int(s)) if len(b)>=6: break max=b[0] for i in range(0,5): if b[i]<b[i+1] and max<b[i+1]: max=b[i+1] print(max)