Skip to content

Commit

Permalink
Merge pull request #1 from ucsal/solucoes
Browse files Browse the repository at this point in the history
Solucoes
  • Loading branch information
mariojp authored Jun 14, 2017
2 parents 12169ed + e56cc38 commit 2a819b6
Showing 1 changed file with 63 additions and 1 deletion.
64 changes: 63 additions & 1 deletion 2016/primeirafase/aquecimento/A/src/main/java/A.java
Original file line number Diff line number Diff line change
@@ -1,8 +1,70 @@
//import do java.util.Scanner
import java.util.Scanner;



/**
* A) Sobre os nomes dos programas
* 1) Sua solução deve ser chamada <i>codigo_de_problema.c</i>,
* <i>codigo_de_problema.cpp</i>, <i>codigo de problema.pas</i>,
* <i> codigo_de_problema.java</i> ou <i>codigo de problema.py</i>,
* onde codigo de problema é a letra maiúscula que identifica o problema.
*
* Lembre que em Java o nome da classe principal deve ser igual ao nome do arquivo.
*
* Exemplo:
* O Codigo do problema Etiquetas Coloridas do Aquecimento 2016 foi A.
* Então o Arquivo vai se chamar A.java e a classe A.
*
* public class A {
* ...
* }
*
*
* @author mariojp
*
*/
public class A {

public static void main(String[] args) {
//FIXME Apague essa linha e escreva seu codigo
//Scanner: Objeto para ler do terminal
//lembrar do import java.util.Scanner;
Scanner scanner = new Scanner(System.in);
//Obtendo o valor em hexa (base 16) e já convertendo para decimal (base 10)
//scanner.nextInt(16);
//Lado do post-it Vermelho
long r = scanner.nextInt(16);
//Lado do post-it Verde
long g = scanner.nextInt(16);
//Lado do post-it Azul
long b = scanner.nextInt(16);
//fechando o scanner (opcional)
scanner.close();
// numero de post-its vermelhos = 1
long red = 1; //red
// numero de post-its verdes:
// (red/green)^2
// dividir o lado do post-it vermelho pelo lado do post-it verde
long green = (int) (r / g);
// o resultado multiplicar por ele mesmo
green = green * green; // green

// numero de post-its azuis:
// (green/blue)^2 * green
// dividir o lado do post-it verde pelo lado do post-it azul
long blue = g / b;
// o resultado multiplicar por ele mesmo
// (descobrimos a quantidade de post-its azuis que cabem em 1 verde)
blue = blue * blue;
// o resultado multiplicar pela quantidade de post-its verdes
blue = blue * green; //blue
//somamos então a quantidade de post-its vermelhos, verdes e azuis
long sum = red + green + blue;
//convertemos novamente de decimal (base 10) para hexadecimal (base 16)
System.out.println(Long.toHexString(sum));

//Obs.: o uso de long no lugar de int foi necessario pois os casos de testes
//apresentaram resultados que não cabiam no tipo int.
}

}

0 comments on commit 2a819b6

Please sign in to comment.