Algorithm
Problem Name: 2 AD-HOC - beecrowd | 2454
Problem Link: https://www.beecrowd.com.br/judge/en/problems/view/2454
Flíper
Por OBI - Olimpíada Brasileira de Informática 2014 Brazil
Timelimit: 1
Flíper é um tipo de jogo onde uma bolinha de metal cai por um labirinto de caminhos até chegar na parte de baixo do labirinto. A quantidade de pontos que o jogador ganha depende do caminho que a bolinha seguir. O jogador pode controlar o percurso da bolinha mudando a posição de algumas portinhas do labirinto. Cada portinha pode estar na posição 0, que significa virada para a esquerda, ou na posição 1 que quer dizer virada para a direita. Considere o flíper da figura abaixo, que tem duas portinhas. A portinha P está na posição 1 e a portinha R, na posição 0. Desse jeito, a bolinha vai cair pelo caminho B.
Você deve escrever um programa que, dadas as posições das portinhas P e R, neste flíper da figura, diga por qual dos três caminhos, A, B ou C, a bolinha vai cair!
Entrada
A entrada é composta por apenas uma linha contendo dois números P (0 ou 1) e R (0 ou 1), indicando as posições das duas portinhas do flíper da figura.
Saída
A saída do seu programa deve ser também apenas uma linha, contendo uma letra maiúscula que indica o caminho por onde a bolinha vai cair: ‘A’, ‘B’ ou ‘C’.
Exemplos de Entrada | Exemplos de Saída |
1 0 |
B |
Code Examples
#1 Code Example with C Programming
Code -
C Programming
#include <stdio.h>
#include <stdbool.h>
int main (void)
{
unsigned short portaP, portaR;
scanf("%hu %hu", &portaP, &portaR);
if (portaP == true && portaR == true)
printf("A\n");
else if (portaP == true && portaR == false)
printf("B\n");
else if (portaP == false)
printf("C\n");
}
Copy The Code &
Try With Live Editor
Input
Output
#2 Code Example with C++ Programming
Code -
C++ Programming
#include <cstdio>
int main() {
int p, r;
scanf("%d %d", &p, &r);
if (p == 1) {
if (r == 0)
printf("B\n");
else
printf("A\n");
} else
printf("C\n");
return 0;
}
Copy The Code &
Try With Live Editor
Input
Output
#3 Code Example with Javascript Programming
Code -
Javascript Programming
const input = require("fs").readFileSync("/dev/stdin", "utf8")
const [D1, D2] = input.split(" ").map(door => Number.parseInt(door, 10))
function ways(d1 = 0, d2 = 0) {
if (d1 === 0) return "C"
else if (d2 === 0) return "B"
else return "A"
}
console.log(ways(D1, D2))
Copy The Code &
Try With Live Editor
Input
Output
#4 Code Example with Python Programming
Code -
Python Programming
p,r=map(int,input().split())
if p==0:print("C")
else:
print("B") if r==0 else print("A")
Copy The Code &
Try With Live Editor
Input
Output