Algorithm
Problem Name: beecrowd | 2143
Problem Link: https://www.beecrowd.com.br/judge/en/problems/view/2143
The Return of Radar
By Joao Marcos Salvanini Bellini de Moraes, IFSULDEMINAS Brazil
Timelimit: 1
Every year after the contest that takes place in Taxiland, contestants and coaches go to the famous and renowned restaurant Radar. However, the waiters (always very kind and polite) get overwhelmed due to the amount of people, and therefore, end up taking a while to serve them.
Contestants or coaches who sit at the ends are the lucky ones, because they order only once and are served right away, but the others must always order twice, because the waiters (always very kind and polite) are careless and easily forget the orders. Besides, there's a superstition going on among the contestants and coaches that if there's not an even amount of people who don't sit at the ends, none of the university's teams will win the next contest.
So your task is to determine the sum of the number of of orders of each one to know if it's worth going to Radar. But whatever the result is, remember: it's always worth going to Radar!
Input
The input consists of the integer T (1 ≤ T ≤ 100) indicating the number of test cases and then, T integers N (3 ≤ N ≤ 104) indicating the number of people. The table is rectangular and there will be at least and at most one person at one end, i.e., if an end is empty, the other must be occupied, otherwise, the two ends must be occupied, but the number of people that are not at the ends must always be even. Read input until T = 0.
Output
Print the sum of the number of orders of each person. There's no newline between the test cases.
Input Sample | Output Sample |
5 13 37 49 11 9 2 5 17 0 |
25 73 97 21 17 9 33 |
Code Examples
#1 Code Example with C Programming
Code -
C Programming
#include <stdio.h>
int main(void)
{
int i, j, n, sum = 0;
while (1)
{
scanf("%d", &n);
if (n == 0)
break;
for (i = 0; i < n; ++i)
{
scanf("%d", &j);
if (j%2==0)
sum = j*2-2;
else
sum = j*2-1;
printf("%d\n", sum);
}
}
return 0;
}
Copy The Code &
Try With Live Editor
Input
Output
#2 Code Example with C++ Programming
Code -
C++ Programming
#include<stdio.h>
int main()
{
int test,i,n;
while(scanf("%d",&test) && test){
for(i = 0; i < test; i++){
scanf("%d",&n);
if(n%2 == 0)printf("%d\n",n*2-2);
else
printf("%d\n",n*2-1);
}
}
return 0;
}
Copy The Code &
Try With Live Editor
Input
Output
#3 Code Example with Javascript Programming
Code -
Javascript Programming
var input = require('fs').readFileSync('/dev/stdin', 'utf8');
var lines = input.split('\n');
const values = input.split('\n').map(value => parseInt(value));
const theReturnOfRadar = (testCase) => {
if (testCase % 2 === 0) {
return (testCase * 2) - 2;
} else {
return (testCase * 2) - 1;
}
};
while (values !== 0) {
const T = values.shift();
if (T === 0) {
break;
}
for (let i = 0; i < T; i++) {
const test = values.shift();
console.log(theReturnOfRadar(test));
}
}
Copy The Code &
Try With Live Editor
Input
Output