当前位置: 代码迷 >> 综合 >> 小 I 打地铺 SDUT
  详细解决方案

小 I 打地铺 SDUT

热度:65   发布时间:2024-01-14 22:32:12.0

小 I 打地铺

Time Limit: 1000 ms Memory Limit: 65536 KiB
Problem Description

小 I 去天津玩啦,一路上,他跟他的同学发生了许多有趣的事。

]机智的小 I 和他的同学们决定玩一个游戏:

给你一副特殊的扑克牌,相同数字的扑克只有 3 种花色

出牌方式有且只有:

  1. 三张数字一样的牌带任意一张
  2. 单出任意一张

假如你现在有数字 1 - n 的共 3 * n 张的扑克牌(每个数字有 3 张花色),你需要计算出 最少几次可以出完这些牌。

请你编程帮助他计算出「最少需要多少次能出完这 3 * n张牌」。(请留意题目下方的提示)

Input

多组输入,每组输入只有一行,给出一个 n(1 <= n <= 100)。

Output

 

对于每组输入,输出一行,表示最少需要几次能出完牌。
 

Sample Input
1
3
Sample Output
3
3
Hint
  • 对于第一组样例:有 3 张 1。次数最少的出牌方法是:三次出牌,每一次出一张1。
  • 对于第二组样例:有 3 张 1 、3 张 2 、3 张 3。次数最少的出牌方法是:三张 1 带一张 3 、三张 2 带一张 3、 一张 3。
Source
IceCapriccio
#include <iostream>
#include <cstdio>
#include <bits/stdc++.h>
using namespace std;
int a[33];
int main()
{int n,i,j;while(cin>>n){i = n / 4;j = n % 4;if(j!=0)i++;cout<<3*i<<endl;}return 0;
}