zoukankan      html  css  js  c++  java
  • Triangle

    Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)

    Total Submission(s): 1057    Accepted Submission(s): 656


    Problem Description

    Mr. Frog has n sticks, whose lengths are 1,2, 3n respectively. Wallice is a bad man, so he does not want Mr. Frog to form a triangle with three of the sticks here. He decides to steal some sticks! Output the minimal number of sticks he should steal so that Mr. Frog cannot form a triangle with
    any three of the remaining sticks.

     

    Input

    The first line contains only one integer T (T20), which indicates the number of test cases. 

    For each test case, there is only one line describing the given integer n (1n20).

     

    Output

    For each test case, output one line “Case #x: y”, where x is the case number (starting from 1), y is the minimal number of sticks Wallice should steal.

     

    Sample Input

    3
    4
    5
    6

    Sample Output

    Case #1: 1

    Case #2: 1

    Case #3: 2

    //题意, n 个数, 1-n 现要使任意三个数作为三角形三条边都不能成功,问至少需要删除几个数

    //认真的模拟算了算,发现就是斐波那契数列。。。能保留下来的数是 1,2,3,5,8,13,21 ... ...

    干脆打表过

    #include <iostream>
    #include <cstdio>
    using namespace std;
    
    int cnt, x, cas;
    int ans[25]={0,0,0,0,1,1,2,3,3,4,5,
    6,7,7,8,9,10,11,12,13,14};
    
    int main()
    {
        scanf("%d", &cas);
        for(int i=1;i<=cas;i++){
            scanf("%d", &x);
            printf("Case #%d: %d
    ", i, ans[x]);
        }
        return 0;
    }
    View Code
  • 相关阅读:
    转:sql语句中GROUP BY 和 HAVING和使用 count()
    shell中的大括号和小括号
    转:关于rename命令ubuntu下的用法
    Linux批量重命名
    STL 源代码剖析 算法 stl_algo.h -- partition
    HDU 5091 线段树扫描线
    IBM 中国研究院面试经历
    当人手一部智能手机时 庞大的数据中心们已死
    Treap的读书笔记2
    【JUnit4.10源码分析】5 Statement
  • 原文地址:https://www.cnblogs.com/haoabcd2010/p/6842360.html
Copyright © 2011-2022 走看看