题库练习 编程实现:硬币

A63142 | 编程实现:硬币

来源创意编程组
时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

编程实现:硬币

题目描述:有N(2≤N≤50)个硬币正面朝上排成一排,每次反转任意3个硬币(正面反转后为反面,反面反转后为正面),请问最少反转几次可以使N个硬币全部反转成反面。

 例如:

N=7,最少反转3次可以使7个硬币全部反转成反面。

第一次将第1、2、3的硬币反转为反面朝上;

第二次将第3个硬币反转为正面朝上,将第4、5的硬币为反面朝上;

第三次将第3、6、7的硬币反转为反面朝上。

输入描述:输入一个正整数N(2≤N≤50),表示硬币的个数

输出描述:输出一个整数如果可以将N个正面朝上硬币全部反转成反面,就输出反转的次数,否则输出-1

样例输入:7

样例输出:3

测试用例:

输入

6

18

34

40

45

50

输出

4

7

12

14

18

28

C++ 编辑器
输入
输出