Algorithm


Problem Name: 2 AD-HOC - beecrowd | 2382

Problem Link: https://www.beecrowd.com.br/judge/en/problems/view/2382

Sedex Marciano

 

Por OBI - Olimpíada Brasileira de Informática 2010 BR Brazil

Timelimit: 5

Estamos no ano 2048 e um dos sonhos da humanidade torna-se finalmente realidade: a colonização do planeta Marte. Nossos primeiros colonizadores acabam de chegar, e já começam a fazer as preparações (como a instalação de cúpulas de oxigênio e tratamento do solo para agricultura) para que mais pessoas possam tentar uma nova vida no planeta vizinho.

Apesar dos avanços tecnológicos e desafios vencidos, ainda resta um grande problema: os foguetes usados para ir a Marte ainda são complicados e caros. Com isso, fica difícil enviar suprimentos para os nossos colonos (enquanto a agricultura ainda não é possível) por muito tempo. Assim, a agência espacial contratou o SBC (Serviço Balístico Cósmico), que desenvolveu um canhão super-potente que consegue disparar esferas até Marte, sem precisar gastar milhões de dólares em equipamento e combustível.

Agora, tudo o que é necessário fazer para enviar suprimentos a Marte é colocar uma caixa com as encomendas dentro de uma esfera e disparar a mesma até seu destino.

Dadas as dimensões de uma caixa com suprimentos e o raio interno da esfera que é disparada pelo canhão, seu programa deverá dizer se é possível enviar tal caixa para Marte usando tal esfera.

 

Entrada

 

Cada entrada contém apenas uma linha com quatro inteiros L, A, P e R, (0 ≤ L, A, P, R ≤ 1000) que representam, respectivamente, a largura, altura e profundidade da caixa, e o raio da esfera.

 

Saída

 

Seu programa deve imprimir um único caractere: 'S' (sem aspas) se é possível colocar a caixa dentro da esfera, ou 'N' (sem aspas) caso contrário.

 

 

 

Exemplos de Entrada Exemplos de Saída

10 20 30 30

S

Code Examples

#1 Code Example with C Programming

Code - C Programming


#include <stdio.h>
#include <math.h>

int main (void)
{

    unsigned short largura, altura, profundidade, raio;
    double diagonal;

    scanf("%hu %hu %hu %hu", &largura, &altura, &profundidade, &raio);

    raio = raio + raio;

    diagonal = sqrt((largura*largura) + (altura * altura) + (profundidade * profundidade));

    if (diagonal  < = raio)
        printf("S\n");
    else
        printf("N\n");

}
Copy The Code & Try With Live Editor

Input

x
+
cmd
10 20 30 30

Output

x
+
cmd
S

#2 Code Example with C++ Programming

Code - C++ Programming


#include <cstdio>
int main() {
    int a, b, c, d;
    scanf("%d %d %d %d", &a, &b, &c, &d);
    d *= 2;
    printf("%c\n", a * a + b * b + c * c  < = d * d ? 'S' : 'N');
    return 0;
}
Copy The Code & Try With Live Editor

Input

x
+
cmd
10 20 30 30

Output

x
+
cmd
S
Advertisements

Demonstration


Previous
#2381 Beecrowd Online Judge Solution 2381 Call List Solution in C, C++, Java, Js and Python
Next
#2383 Beecrowd Online Judge Solution 2383 Altas Aventuras Solution in C, C++, Java, Js and Python