Jump to content

Duvida na existencia de uma função


Joao brandao
 Share

Recommended Posts

eu de essa ja tinha conhecimento e ate ja  a usei. Estava era a perguntar se existia outra maneira sem ser essa

Porque?

Copias, um a um, todos os elementos excepto o que queres apagar.

What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Link to comment
Share on other sites

... precisas de usar uma estrutura de dados diferente ...

+1

Outra questao era saber como é que poderia passar um int para void

Para que? Porque? Nao facas isso!

Passar um int para void é pior que mete-lo a zero --- sugiro que metes a zero em vez de o passares para void.

int_a_passar_para_void = 0; // pronto

What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Link to comment
Share on other sites

Eu estava a fazer um exercicio da ONI( http://www.dcc.fc.up.pt/oni/problemas/2011/qualificacao/probA.html ) e uma das maneiras que queria fazer era usar aquela estrutura do vector(nao sei bem o nome daquilo; duas coisas muito simples que se metem é  #include <vector> e vector <int>nome_do_vector).

O exercicio basicamente era sempre que se lia uma energia ele entrava num if, fazia push_back e colocava no vector e depois disso usava a funçao qsort para ordenar o vector mas isto dizia que n dava devido a nao aquela situaçao de int para void :-S

so comecei a mexer em c++ e nestas funçoes a pouco :-S a falta de experiência faz me fazer perguntas estúpidas como esta..

Link to comment
Share on other sites

... usava a funçao qsort para ordenar o vector mas isto dizia que n dava devido a nao aquela situaçao de int para void :-S

Ah! Não é de int para void! É de int* para void*: há uma diferença enorme 👍

Mas para ordenares em C++ usa std::sort() em vez de qsort().

a falta de experiência faz me fazer perguntas estúpidas como esta..

Nao ha perguntas estupidas quando se esta a aprender; todos nós passamos por isso.

What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Link to comment
Share on other sites

Hint: ordenar n vai ajudar mt messe problema. Ja conheces a notacao O() ? Ajuda para explicar o porque. Nao sei se tens seguido a usaco...

Edit: a stl tem uma classe priority_queue

"What we do for ourselves dies with us. What we do for others and the world, remains and is immortal.", Albert Pine

Blog pessoal : contém alguns puzzles, algoritmos e problemas para se resolver com programação.

Link to comment
Share on other sites

Tens de ver uma coisa nesse problema, precisas de uma estrutura de dados que te permita realizar pelo menos 3 operacoes:

min() -> apaga e retorna o minimo

max() -> apaga e retorna o maximo

insert() -> insere um valor

Podes por exemplo usar uma heap(http://en.wikipedia.org/wiki/Binary_heap). Com uma pequena modificacao, podes fazer insercoes em O(log N) e remocoes em O(log N), sendo N o numero de bakugans na colecao.

<Signature goes here>

Link to comment
Share on other sites

Eu sugiro que não se fiem apenas na info da wikipedia, mas penso que essa página sobre binomial_heaps é um bom ponto de partida.

A classe priority_queue é algo limitada (suporta as operações descritas nessa *edit:*página*), especialmente se inserirem dados cuja prioridade pode mudar - operação increase/decrease key  (algo normal em alguns algoritmos de grafos por exemplo).

O ideal era irem vendo algumas coisas no Introduction to Algorithms. Reconheço que é um livro um pouco pesado para nós, em que a nossa educação não nos dá tantas bases como noutros países. Mas podem ir tirando dúvidas no forum ou procurar outros recursos mais "leves" (como a usaco).

Assim numa pesquisa rápida vi este ppt que me parece bom sobre o assunto (que se baseia no livro que referi: CLRS são as iniciais dos autores do Introduction to Algorithms) - www.cs.princeton.edu/~wayne/cs423/lectures/heaps.ppt

"What we do for ourselves dies with us. What we do for others and the world, remains and is immortal.", Albert Pine

Blog pessoal : contém alguns puzzles, algoritmos e problemas para se resolver com programação.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.