HackerRank Drawing Book Problem Solution in C
#include <math.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <assert.h>
#include <limits.h>
#include <stdbool.h>
int main(){
int n;
scanf("%d",&n);
int p;
scanf("%d",&p);
if(n-p>p)
printf("%d",(p/2));
else
printf("%d",((n-p)/2));
return 0;
}HackerRank Drawing Book Problem Solution in JavaScript
process.stdin.resume();
process.stdin.setEncoding('ascii');
var input_stdin = "";
var input_stdin_array = "";
var input_currentline = 0;
process.stdin.on('data', function (data) {
input_stdin += data;
});
process.stdin.on('end', function () {
input_stdin_array = input_stdin.split("\n");
main();
});
function readLine() {
return input_stdin_array[input_currentline++];
}
/////////////// ignore above this line ////////////////////
function solve(n, p){
//determine the target page position in # of turns from front
let targetNumTurns = Math.floor(p/2);
//determine end of book in # of turns from font
let endNumTurns = Math.floor(n/2);
//return optimal strategy
//console.log(targetNumTurns);
//console.log(endNumTurns);
return Math.min(targetNumTurns, (endNumTurns - targetNumTurns));
}
function main() {
var n = parseInt(readLine());
var p = parseInt(readLine());
var result = solve(n, p);
process.stdout.write(""+result+"\n");
}HackerRank Drawing Book Problem Solution in Python
#!/bin/python3
import sys
n = int(input().strip())
p = int(input().strip())
def do_that(n,k):
if n%2==1:
print(min(k//2,(n-k)//2))
else:
print(min(k//2,(n+1-k)//2))
do_that(n,p)
0 Comments