求此算法完整代码,谁能写出来就是天才

问题描述

1至13个数,从中取五个数,要求这五个数中不能存在重复的数.每相邻的十个五个数为一组,共取30组(也就是300个五个数)。而且每五个数和其它的五个数不能完全重复。一组中不同的五个数相比较不能存在3个相同的数字。

解决方案

解决方案二:
帮你顶了。
解决方案三:
引用楼主aa381286161的回复:

1至13个数,从中取五个数,要求这五个数中不能存在重复的数.每相邻的十个五个数为一组,共取30组(也就是300个五个数)。而且每五个数和其它的五个数不能完全重复。一组中不同的五个数相比较不能存在3个相同的数字。

里面的“.每相邻的十个五个数为一组”是什么意思
解决方案四:
题目读起有点纠结!麻烦楼主写清楚点!
解决方案五:
该回复于2010-11-10 15:20:45被版主删除
解决方案六:
好吧,我承认我看不懂题目--!纠结
解决方案七:
该回复于2010-11-10 15:21:18被版主删除
解决方案八:
看来是因为看不懂题目啊
解决方案九:
结贴率00000
解决方案十:
哈哈菜鸟飘过无权发言..
解决方案十一:
上帝读不懂的题目
解决方案十二:
一组中不同的五个数相比较不能存在3个相同的数字。只是3个?4个行不?
解决方案十三:
该回复于2010-12-02 15:07:14被版主删除
解决方案十四:
写了个不知道满不满足楼主的题目importjava.util.Vector;publicclassFindFives{privateVector<String>org=null;privateVector<Five>all=null;privateVector<Ten>tens=null;publicFindFives(){tens=newVector<Ten>(0);org=newVector<String>(0);for(inti=1;i<14;i++){org.add(""+i);}all=newVector<Five>(0);createFives();for(intj=0;j<30;j++){Tenten=newTen();for(inti=0;i<10;i++){for(Fivefive:all){if(ten.addToTen(five)){break;}}}tens.add(ten);System.out.println("第"+(j+1)+"组:");for(Fivefive:ten.fives){System.out.println(five.getUID());}}}privatevoidcreateFives(){Fivefive;for(inti1=1;i1<10;i1++){for(inti2=i1+1;i2<11;i2++){for(inti3=i2+1;i3<12;i3++){for(inti4=i3+1;i4<13;i4++){for(inti5=i4+1;i5<14;i5++){five=newFive(""+i1,""+i2,""+i3,""+i4,""+i5);all.add(five);}}}}}}publicstaticfinalvoidmain(Stringarg[]){FindFivesxxx=newFindFives();}classTen{privateVector<Five>fives=null;publicTen(){fives=newVector<Five>(0);}publicbooleanaddToTen(Fivefive){for(Fivef:fives){intsame=0;for(Stringnum:f.getNums()){if(five.getNums().contains(num)){same++;if(same>=3){returnfalse;}}}}fives.add(five);all.remove(five);returntrue;}}classFive{privateVector<String>nums=null;privateStringUID=null;publicFive(){nums=newVector<String>(0);}publicFive(Stringarg1,Stringarg2,Stringarg3,Stringarg4,Stringarg5){nums=newVector<String>(0);nums.add(arg1);nums.add(arg2);nums.add(arg3);nums.add(arg4);nums.add(arg5);}publicVector<String>getNums(){returnnums;}publicStringgetUID(){if(UID==null&&nums.size()==5){UID="";for(Stringnum:nums){UID+=num+".";}}returnUID;}}}

解决方案十五:
题目描述不清楚
其他方案:
写不出来的可能是天才.
其他方案:
引用15楼michaellufhl的回复:

写不出来的可能是天才.

我看楼主才是天才!
其他方案:
谁能告诉我这问题有什么意义?
其他方案:
引用16楼bao110908的回复:

引用15楼michaellufhl的回复:写不出来的可能是天才.我看楼主才是天才!

天才只值40分!!
其他方案:
需要天才才能写出的程序是不是应该付出天价才是?!
其他方案:
刷分的吧!!!!
其他方案:
楼主,你绕口令呀
其他方案:
才几天没来居然说我分数是负分了
其他方案:
卡卡卡卡卡卡
其他方案:
我是进来看天才的。。
其他方案:
坐等高手解答
其他方案:
不知是说啥
其他方案:
确实不太明白,与天才无缘!
其他方案:
天才哥,你直接举例子吧
其他方案:
强烈要求提高天才回报!!
其他方案:
呵呵,顶下。。。。。
其他方案:
纯进来打酱油。。
其他方案:
该回复于2010-12-03 13:42:08被版主删除
其他方案:
呵呵,拍个砖,谢谢大虾解题了!!!!!!
其他方案:
/****/packagehoulei.csdn.algorithm;importjava.util.Arrays;importjava.util.Random;/***1至13个数,从中取五个数,要求这五个数中不能存在重复的数.<br/>*每相邻的十个五个数为一组,共取30组(也就是300个五个数)。<br/>*而且每五个数和其它的五个数不能完全重复。<br/>*一组中不同的五个数相比较不能存在3个相同的数字。*<p>*创建时间:2010-11-10下午04:32:56*@authorHouLei*@since1.0*/publicclassDetachNumber{staticclassNumbers{staticfinalintSize=5;staticfinalintMin=1;staticfinalintMax=13;short[]value=null;/***取Size个从Min到Max的不同数字,排序后,放入value数组。*/publicNumbers(){value=newshort[Size];Randomrand=newRandom(System.currentTimeMillis());for(inti=0;i<Size;i++){value[i]=(short)(rand.nextInt(Max-Min+1)+Min);for(intj=0;j<i;j++){if(value[j]==value[i]){i--;break;}}}Arrays.sort(value);}/***当value数组中所有的数字与目标对象相比都相同的时候,返回true。*@seejava.lang.Object#equals(java.lang.Object)*/@Overridepublicbooleanequals(Objectobj){if(this==obj)returntrue;if(obj!=null&&objinstanceofNumbers){Numberso=(Numbers)obj;returnArrays.equals(value,o.value);}returnfalse;}/***@return返回两个对象的value数组中,相同数字的个数。*/publicintrepeatConts(Numbersfn){intcount=0,i=0,j=0;while(i<value.length&&j<fn.value.length){if(value[i]==fn.value[j]){i++;j++;count++;}elseif(value[i]<fn.value[j]){i++;}else{j++;}}returncount;}@OverridepublicStringtoString(){StringBuilderbuff=newStringBuilder("[").append(value[0]);for(inti=1;i<value.length;i++){buff.append(",").append(value[i]);}buff.append("]");returnbuff.toString();}}staticclassNumbersGroup{staticfinalintSize=10;staticfinalintRepeats=3;privateNumbersvalue[]=null;/***取Size个Numbers放入value数组,并保证重复数小于Repeats。*/publicNumbersGroup(){value=newNumbers[Size];for(inti=0;i<Size;i++){value[i]=newNumbers();for(intj=0;j<i;j++){if(value[j].repeatConts(value[i])>=Repeats){i--;break;}}}}@OverridepublicStringtoString(){StringBuilderbuff=newStringBuilder("{").append(value[0]);for(inti=1;i<value.length;i++){buff.append(",").append(value[i]);}buff.append("}");returnbuff.toString();}}/***测试函数。由于使用的是最土的算法,所以,时间复杂度巨大无比,测试时,请耐心等待。谢谢。*/publicstaticvoidmain(String[]args){finalintGroups=30;java.util.ArrayList<NumbersGroup>list=newjava.util.ArrayList<NumbersGroup>(Groups);for(inti=0;i<Groups;i++){list.add(newNumbersGroup());}for(inti=0;i<Groups;i++){System.out.println(list.get(i));}}}

其他方案:
优化算法,可以考虑,二维数组,数字填充。一个group形成一个二维数组,取30个group就OK了。优化的潜力,还是很大的。
其他方案:
打个酱油
其他方案:
太难了,题目拗口!
其他方案:
太纠结了……
其他方案:
太悲伤了我读不懂题目
其他方案:
C语言算法???
其他方案:
首先相鄰的定義是什麼?其次,10個(5個不重複數)最多只能相同兩個。這個條件錯誤,應該是各10個(5個不重複數)中的(5個不重複數)最多重複兩個。因為10個(5個不重複數)若各(5個不重複數)最多能重複兩個數字,那至少要用掉2+3*10個數字才行。所以題目根本就出錯了。難怪要天才才能寫出來。

时间: 2024-11-05 21:57:14

求此算法完整代码,谁能写出来就是天才的相关文章

jdbc实现分页的完整代码该怎么写。

问题描述 jdbc实现分页的完整代码该怎么写. 求好心人给完整的代码.让我熟悉一下. jdbc.servlet.jsp. 解决方案 其实这个跟jdbc没关系,你可以用sql写分页查询http://www.cnblogs.com/wangyong/p/3396333.html 解决方案二: package com.zuxia.util; import java.util.List; public class PageModel { private int currentPage;//当前页 pri

sql-html验证数据库 求大神完整代码

问题描述 html验证数据库 求大神完整代码 我写了一个html 想里面有注册信息 里面有用户名 密码 想把文本框的信息获取到sql Sever数据库进行一个insert增加 注册 求大神指教 全部代码

我想做一个这样新用户注册界面,可是我不会把权限和姓名也写进数据库,求好心人赐一个完整代码

问题描述 我想做一个这样新用户注册界面,可是我不会把权限和姓名也写进数据库,求好心人赐一个完整代码 解决方案 看看这些http://download.csdn.net/detail/aimonhai/1480222http://download.csdn.net/download/bkzhw3/5975209http://download.csdn.net/download/fanhongwei601/4353841http://download.csdn.net/detail/qq223857

[置顶]群蚁算法理论与实践全攻略——旅行商等路径优化问题的新方法【附C#群蚁算法完整项目代码】

若干年前读研的时候,学院有一个教授,专门做群蚁算法的,很厉害,偶尔了解了一点点.感觉也是生物智能的一个体现,和遗传算法.神经网络有异曲同工之妙.只不过当时没有实际需求学习,所以没去研究.最近有一个这样的任务,所以就好好把基础研究了一下,驱动式学习,目标明确,所以还是比较快去接受和理解,然后写代码实现就好了.今天就带领大家走近TSP问题以及群蚁算法.  机器学习目录:[目录]数据挖掘与机器学习相关算法文章总目录 本文原文地址:群蚁算法理论与实践全攻略--旅行商等路径优化问题的新方法  1.关于旅行

c语言-求1到100的素数的C语代码 有多少种写多少种

问题描述 求1到100的素数的C语代码 有多少种写多少种 求1到100的素数的C语言循环代码有多少种写多少种 求1到100的素数的C语言循环代码有多少种写多少种 解决方案 # include <stdio.h> # include <math.h> int main() { int i, j, c; c = 0; for (i = 100; i <= 200; i++) { c = 0; for (j = 2; j < sqrt(i); j++) { if (i%j =

sql server-winfrom如何使用数据库,求完整代码

问题描述 winfrom如何使用数据库,求完整代码 我想在窗体中调用数据库,可我忘记代码了,百度也没找到合适的,所以我想求完整代码.不要求三层架构 如何在winfrom里调用sql server数据库,求完整代码 解决方案 MySQLConnection conn = null; conn = new MySQLConnection(new MySQLConnectionString("58.96.191.232", db_name, "test", "1

android开发-请问里面 的strResult如何给主线程用啊,求大神解答,最好简单写下代码

问题描述 请问里面 的strResult如何给主线程用啊,求大神解答,最好简单写下代码 new Thread(new Runnable() { @Override public void run() { Looper.prepare(); // TODO Auto-generated method stub String path = "http://www.shopmanage.com/landlady/spm"; // String path = "http://221.

ajax和ssh框架实现对遍历项的修改(求完整代码)

问题描述 ajax和ssh框架实现对遍历项的修改(求完整代码) 这是我的jsp代码,这里的数据是遍历的,求一个完整的代码,从ajax的传输,到action回应的 解决方案 解决方案二: 从后台返回来的应该是ArrayList<对象实体>,这样的结果应该是查询数据库中多行记录, 你只需要action中定义一个 private List listUser = null; private List getListUser() { if(reuslt == null){ return Collecti

c++-C++求最大加权独立集。只要思路就好了,代码我自己写

问题描述 C++求最大加权独立集.只要思路就好了,代码我自己写 假设有A,它提供一个干扰半径,B为一个集合,集合中每一个元素提供位置坐标和一个权重.如果两个元素半径小于干扰半径,则不能放入一个集合中,如果两位置距离大于等于干扰半径,则可以.求出最大权重的集合,集合的权重为集合中元素的权重之和. 我已经想了好久好久了QAQ 但是写出来的一个办法会导致内存泄漏. 拜托大神给一个思路就好了,代码我自己写. 解决方案 参考:http://zhidao.baidu.com/link?url=vfGzj4f