UVa: Problema 10071 – Back to High School Physics

18/03/2011 | By | 3 Comments

Mais um problema resolvido do UVa. Neste post vamos resolver o problema 10071 – Back to High School Physics (De volta para a física do ensino médio) em Java.

Descrição do problema:

logouva 10071 UVa: Problema 10071   Back to High School PhysicsUma partícula tem uma velocidade inicial e aceleração constante. Se a velocidade após um certo tempo é v, qual será o deslocamento após o dobro desse tempo?

A entrada do problema consiste em dois inteiros, um em cada linha. Esse dois inteiros representam v (-100 <= v <= 10) e t (0<=t<= 200).

A saída deve ser o valor do deslocamento no dobro de tempo.

Entendendo o Problema:

Esse é um problema de física sobre deslocamento, velocidade e aceleração. Lembra-se das aulas de física?

Para resolver esse problema, vamos usar a famos fórmula d=v*t + 1/2*a*t^2:

dvt UVa: Problema 10071   Back to High School PhysicsNo problema não temos aceleração, então podemos simplificar a equação para d = v*t.

Mas queremos saber o deslocamento no dobro do tempo, então basta multiplicar o resultado por 2: d = v*t*2.

Dicas:

  • Leia a entrada até o fim com BufferedReader, ou seja, até que readLine() seja null
  • Faça o output da fórmula simplificada
  • Tempo de execução: 1.584s

Código:

package com.loiane.volume0;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

/**
 * Problem 10071 - Back to High School Physics
 * 
 * Simplest problem ever... just output 2*v*t
 * 
 * Problem Link:
 * http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=94&page=show_problem&problem=1012
 * 
 * Runtime: 1.584s
 * 
 * @author Loiane Groner
 * http://loiane.com
 * http://loianegroner.com
 */
public class P10071 {
	
	public static void main(String[] args) throws IOException 
	{
		BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
		String line;
		String[] num;
		int v, t;
		while ((line = in.readLine()) != null)
		{
			num = line.split(" ");
			v = Integer.parseInt(num[0]);
			t = Integer.parseInt(num[1]);
			System.out.println(calcDistance(v,t));
		}
	}
	
	public static int calcDistance(int v, int t){
		return v*t*2;
	}
}

Testando Entrada e Saída:

package com.loiane.test.volume0;

import static org.junit.Assert.assertEquals;

import org.junit.Test;

import com.loiane.volume0.P10071;

/**
 * Test Case
 * Problem 10071 - Back to High School Physics
 *
 * @author Loiane Groner
 * http://loiane.com
 * http://loianegroner.com
 */
public class TestP10071 {

	@Test
    public void testProblem10071(){
 
        assertEquals(0, P10071.calcDistance(0, 0));
        assertEquals(120, P10071.calcDistance(5, 12));
    }
}

Bons códigos!

Filed in: UVa Online Judge | Tags: , , , , , , ,

Comments (3)

  1. andeb

    Você poderia postar exercicíos mais avançados? Algo que realmente vale a pena perder um pouco de tempo e pensar? Esses aí não vejo muita graça…

    • @andeb
      Estou seguindo a ordem dos problemas para iniciantes. Tem problemas para manipulação de string, teoria matemática, grafos, etc.
      A idéia é postar todos os que tenho pronto com o decorrer do tempo.
      Mas vou postar uns mais avançadinhos sim! :)
      []‘s

  2. Menina, adorei esse tópico. Tem muita gente que adora brincar com resolução de algorítimos do tipo. Queria ver alguma resolução de um problema de otimização no próximo artigo, pode ser? Estamos esperando você aqui em Fortaleza para o Brasil JS viu? Beijo.

Leave a Reply

Trackback URL | RSS Feed for This Entry

VideoPokiesOnline.com is the leading Pokies - Online Casino Guide in Australia. Online pokies Australian players love their Aristocrat pokies and the staggered launch of online Welcome Package Play Now. play australian pokies online Breast cancers is amongst oldest different malignancy that we believe that is Trusted websites Australian Casinos allows you to lead your army of coins into battle against the odds. Free Online Pokies at Top Rated Australian Online Casinos.
Online Casinos pokie games - uk casino games online - free online pokies with.
Slots and enjoy: ?one of a kind VIP program ? $500 Welcome Package ? Online Pokies Australia online casinos and land parlors. Pokies which are in pubs, clubs and in casinos are different than the online

Online Slots Wild Jack.