COMBINACAO QUE NAO EXISTE EM TABELA
Pessoal é o seguinte, tenho uma tabela com 600 linhas e 15 colunas, cada coluna possui um numero que vai de 1 a 30, os numero NÃO se repetem numa mesma linha.
Preciso descobrir quais as combinações de número que não existem nessas 600 linhas.
Alguem tem alguma ideia de como fazer isso?
Preciso descobrir quais as combinações de número que não existem nessas 600 linhas.
Alguem tem alguma ideia de como fazer isso?
Qual banco de dados?
OBS: Parece trabalho de faculdade...
OBS: Parece trabalho de faculdade...
Não é difÃcil, mas preciso saber qual o banco de dados para dar o caminho das pedras
Veja se entendi bem:
Como vc disse, os numeros nas colunas nao repetem, logo temos uma Combinacao Simples de C(30,15) que resultara 155.117.520 combinacoes possiveis para cada linha. Visto apenas 600 linhas estao sendo analisadas, vc tem um restante bem grande pra exibir.
PS. teclado sem acentuacao. desculpem-me.
Como vc disse, os numeros nas colunas nao repetem, logo temos uma Combinacao Simples de C(30,15) que resultara 155.117.520 combinacoes possiveis para cada linha. Visto apenas 600 linhas estao sendo analisadas, vc tem um restante bem grande pra exibir.
PS. teclado sem acentuacao. desculpem-me.
usa o MOD
cara isso é uma analise combinatória muito louca (digo isso porque odieio analise combinatória)
Voce terá de fazer um programa que gere todas a combinações possiveis e depois comparar uma a uma com sua tabela, tem noção disso.
Voce terá de fazer um programa que gere todas a combinações possiveis e depois comparar uma a uma com sua tabela, tem noção disso.
bom acho que o legal seria criar uma rotina de criação de numeros aleatorios e em seguida fazer uma select no banco, se existir gera outro se naum existir BINGO...
isso parece complicado, mas ao meu ver é naum, pois vc pega uma rotina para gerar numeros aleátorios prontinha aqui no site e depois só monta o select, e no pc para gerar e comparar em apenas 600 registro, ou 10.000 que seja, levaria apenas milesimos de segundos
isso parece complicado, mas ao meu ver é naum, pois vc pega uma rotina para gerar numeros aleátorios prontinha aqui no site e depois só monta o select, e no pc para gerar e comparar em apenas 600 registro, ou 10.000 que seja, levaria apenas milesimos de segundos
Pelo que eu lembro, em combinações a ordem não importa: 01,02,03 = 01,03,02 = 02,01,03 ...
Se for usar o mecanismo de banco de dados pra resolver a questão, acho que podemos gravar todas as combinações possÃveis de forma ordenada nos campos, ordenar os campos dos 600 registros e depois cruzar a grande massa contra os 600 registros com um NOT IN. No entanto NOT IN é muito custoso. Creio que deve existir ma forma melhor, pois foi só um [Ô]brainstorm[Ô].
JULGADO, anexe a tabela pra gente ir olhando.
Se for usar o mecanismo de banco de dados pra resolver a questão, acho que podemos gravar todas as combinações possÃveis de forma ordenada nos campos, ordenar os campos dos 600 registros e depois cruzar a grande massa contra os 600 registros com um NOT IN. No entanto NOT IN é muito custoso. Creio que deve existir ma forma melhor, pois foi só um [Ô]brainstorm[Ô].
JULGADO, anexe a tabela pra gente ir olhando.
Tópico encerrado , respostas não são mais permitidas