MCTS .NET Framework 4, Web Applications

by Fujiy 6. julho 2010 08:11

Outra beta, fiz no mesmo dia do exame de ADO.NET.

 

Tags:

Meu Portfolio

MCTS .NET Framework 4, Data Access with ADO.NET

by Fujiy 6. julho 2010 08:06

Essa ganhei no fase Beta. A vantagem além de sair de graça, é ganhar o certificado Charter, que é dado quando se passa no exame nos primeiros seis meses após o lançamento, ou na fase Beta.

Tags:

Meu Portfolio

CoSpeed Speed+Zoom Hack 2.18 for Conquer 5136 MultiClient

by Fujiy 6. junho 2009 20:45


English
Working on patch 5136
Multi Client


How to use:
Check COSpeed(OFF) to turn on.
- If you wanna to enable speed hack just specifies Char, uncheck "All" checkbox and select chars that you wanna on list
- To use Zoom Hack, select one char and use slider. To back to original zoom, click on Reset Zoom

If you have problem with Vista: Right click the program and then click Run As Administrator.

 

You Need .Net2: Download

 

Download CoSpeed:

COSpeed.exe (18,00 kb)

Tags: ,

Meu Portfolio

MCPD Windows Developer

by Fujiy 16. março 2009 12:25

Passei no exame 70-548 e finalmente ganhei o MCPD. Vou continuar os estudos, agora pensando nos certificados do Visual Studio 2008 que acabaram de sair. Provavelmente vou fazer primeiro o de ASP.NET que uso diariamente.

Tags:

Meu Portfolio

Artigo "Garbage Collection" na .Net Magazine nº 59

by Fujiy 25. fevereiro 2009 13:19

Estou meio atrasado. Na edição de Janeiro, nº 59, saiu meu artigo sobre Garbage Collection. É um assunto interessante, apesar de não ser programação em si, envolve muitos conceitos importantes que deve ser levado em consideração na hora de programar. Qualquer dúvida, é só escrever aqui no blog ou enviar por email.

Tags: ,

Meu Portfolio

ConquerMemory Tool 3.26 for Conquer 5079 (MultiClient)

by Fujiy 6. dezembro 2008 14:02

English:

Working on patch 5079

Multi Client

You Need .Net2: Download


------------------------------------

Português:

Funciona na atualização 5079

Multi Client

Necessário .Net2: Download

 


Tags:

Meu Portfolio

Artigo "Skype API" na .Net Magazine

by Fujiy 27. outubro 2008 22:00

Neste mês sai meu primeiro artigo na .Net Magazine nº56, "Skype API - Aprenda a integrar seu software ao Skype". A revista deve chegar às bancas ainda esta semana e conta com muitos outros assuntos interessantes. O próximo artigo deve sair na edição 58 em dezembro e pretendo continuar escrevendo, apesar de estar bastante ocupado nas últimas semanas.

Espero que gostem e enviem seu feedback por email ou comentário

Tags: ,

Meu Portfolio

Google Code Jam - Saving the Universe

by Fujiy 17. julho 2008 22:52

Infelizmente meus planos de participar do Google Code Jam já eram. Marquei pra competir no dia 26(Sábado), até ai tudo ok, mas pra ajudar fizeram as eliminatórias HOJE, numa quinta-feira. Claro, como a maioria das pessoas estava trabalhando, quando cheguei ja tinha acabado o tempo...
De qualquer forma fiz o primeiro desafio, em C#, vou postar o código fonte pra vocês.

O desafio é salvar o Universo =). Segundo o Google, se você buscar pelo nome de um buscador nele mesmo(Ex.: Buscar Google, no Google) o universo vai implodir. Você recebe uma lista de Buscadores e a lista de Palavras à buscar(que vai ser sempre o nome de um dos buscadores). Então tem que gerar um algoritmo que faça que a busca, sem buscar a Palavra no Buscador com mesmo nome(pra nao implodir o Universo). Até aí nada demais, seria só um if pra fazer o switch entre qual buscador vai usar cada vez.

O desafio é fazer esse switch da forma mais otimizada possível, dizendo qual o número mínimo de switchs em cada caso, exemplos:

5
Yeehaw
NSM
Dont Ask
B9
Googol
10
Yeehaw
Yeehaw
Googol
B9
Googol
NSM
B9
NSM
Dont Ask
Googol
5
Yeehaw
NSM
Dont Ask
B9
Googol
7
Googol
Dont Ask
NSM
NSM
Yeehaw
Yeehaw
Googol

O primeiro número indica a quantidade de Buscadores, seguido pelos nomes dos mesmo, depois o número de Searchs e as respectivas Buscas.

No caso acima, devemos retornar:

Case #1: 1
Case #2: 0

Segue o código:

class Saving_the_Universe
{
    const string CaminhoEntrada = @"C:\Documents and Settings\Felipe\Meus documentos\Visual Studio 2008\Projects\CodeJam\CodeJam\Saving_the_Universe_Entrada.txt";
    const string CaminhoSaida = @"C:\Documents and Settings\Felipe\Meus documentos\Visual Studio 2008\Projects\CodeJam\CodeJam\Saving_the_Universe_Saida.txt";
 
    static List<string> Buscadores = new List<string>();
    static List<string> Querys = new List<string>();
 
    static void Main(string[] args)
    {
        StreamReader Entrada = new StreamReader(CaminhoEntrada);
        if (File.Exists(CaminhoSaida))
            File.Delete(CaminhoSaida);
 
        StreamWriter Saida = new StreamWriter(CaminhoSaida);
 
        int CasoAtual = 1;
        int CasosTotais = int.Parse(Entrada.ReadLine());
 
        string Temp = "";
 
        while (CasoAtual <= CasosTotais)
        {
            Buscadores.Clear();
            Querys.Clear();
 
            Temp = Entrada.ReadLine();
            for (int i = 0; i < int.Parse(Temp); i++)
            {
                Buscadores.Add(Entrada.ReadLine());
            }
 
            Temp = Entrada.ReadLine();
            for (int i = 0; i < int.Parse(Temp); i++)
            {
                Querys.Add(Entrada.ReadLine());
            }
 
            Saida.WriteLine("Case #{0}: {1}", CasoAtual, Algoritmo());
 
            CasoAtual++;
        }
 
        Entrada.Close();
        Saida.Close();
        Console.ReadKey(true);
    }
 
    static int Algoritmo()
    {
        Dictionary<string, int> QuerysContadas = new Dictionary<string, int>();
        //Pra cada buscador, conta quantas Querys existem chamando eles
        foreach (var item in Buscadores)
        {
            QuerysContadas.Add(item, Querys.Count<string>(p => p == item));
        }
 
        if (QuerysContadas.Values.Min() == 0)
            return 0;
 
 
        int UltimoIndice = 0;
        List<string> PalavraBuscadasNaOrdem = new List<string>();
 
        for (int i = 0; i < Querys.Count; i++)
        {
            if (PalavraBuscadasNaOrdem.Count == 0 || Querys[i] == PalavraBuscadasNaOrdem[PalavraBuscadasNaOrdem.Count - 1])
            {
                foreach (var NomeBuscador in Buscadores)
                {
                    if (Querys.IndexOf(NomeBuscador, i) == -1)
                        return PalavraBuscadasNaOrdem.Count;
 
                    if (UltimoIndice < Querys.IndexOf(NomeBuscador, i) && (PalavraBuscadasNaOrdem.Count == 0 || NomeBuscador != Querys[i]))
                        UltimoIndice = Querys.IndexOf(NomeBuscador, i);
                }
                PalavraBuscadasNaOrdem.Add(Querys[UltimoIndice]);
            }
        }
 
        return 1;
    }
}

Tags:

Meu Portfolio

Certificado MCTS : .NET Framework 2.0: Windows Applications

by Fujiy 30. junho 2008 22:36

Tags:

Meu Portfolio

Google Code Jam - Alien Numbers e Always Turn Left

by Fujiy 25. junho 2008 14:35

Conseguir fazer os dois primeiros testes do primeiro concurso, o Alien Numbers e Always Turn Left. É possível também baixar o código dos vencedores, que são na maioria em C++.

Queria saber se alguem mais fez em C#, pra trocar umas idéias sobre o algoritmo. O meu ficou bem grande, 460 linhas, fiz orientado a objetos e tudo comentando e separado em métodos, talvez por isso tenha ficado tão grande.

Esse fim de semana vou participar do concurso e quem sabe da pra ganhar uns trocados...

Ah, o primeiro colocado do primeiro concurso que levou U$10000,00 é algum tipo de gênio, o que só levou vinte e poucos minutos pra fazer cada um dos 4 testes, levei 2h pra fazer o primeiro e 3h pro segundo. Do segundo colocado em diante demoraram várias dezenas de horas.

Quem quiser o código fonte é só pedir. Não vou postar pelo tamanho do mesmo.

Tags:

Meu Portfolio

Powered by BlogEngine.NET 1.6.1.0 - Eco Theme by n3o Web Designers