zoukankan      html  css  js  c++  java
  • for语句之侦查队挑选人、猴子吃桃、5个小朋友算年龄、1 () 2 () 3 ()4 = 4;问括号里我要填 (- 或 +)问题

    1、某侦察队接到一项紧急任务,要求在A、B、C、D、E、F六个队员中尽可能多地挑若干人,但有以下限制条件:
    侦察兵A和B两人中至少去一人; a+b>=1(由于每个队员有两种状态:去与不去,假设不去为0,去为1;把每个条件用等式表示出来,用for循环让每个条件都满足)
    A和D不能一起去; a+d<=1
    A、E和F三人中要派两人去; a+e+f == 2
    B和C都去或都不去; b+c !=1
    C和D两人中去一个; c+d==1
    若D不去,则E也不去。 d+e==0 || d=1
    问应当让哪几个人去?

    for (int a = 0; a <= 1; a++)
                {
                    for (int b = 0; b <= 1; b++)
                    {
                        for (int c = 0; c <= 1; c++)
                        {
                            for (int d = 0; d <= 1; d++)
                            {
                                for (int e = 0; e <= 1; e++)
                                {
                                    for (int f = 0; f <= 1; f++)
                                    {
                                        if (a + b >= 1 && a + d <= 1 && a + e + f == 2 && b + c != 1 && c + d == 1 && (d + e == 0 || d == 1))
                                        {
                                            Console.WriteLine("A:" + a + "
    B:" + b + "
    C:" + c + "
    D:" + d + "
    E:" + e + "
    F:" + f);
                                        }
                                    }
                                }
                            }
                        }
                    }
                }

    2、公园里有一只猴子和一堆桃子,猴子每天吃掉桃子总数的一半,把剩下一半中扔掉一个坏的。到第七天的时候,猴子睁开眼发现只剩下一个桃子。问公园里刚开始有多少个桃子?(逆向思维思考)


    (1+1)*2==4
    (4+1)*2==10

    int tz = 1;
                for (int i = 6; i >= 1; i--)
                {
                    tz = (tz + 1) * 2;
                }
                Console.WriteLine("第一天的时候公园里有:" + tz + "个桃子");

    3.五个小朋友排成一队。问第一个多大了,第一个说比第二个大两岁,问第二个,第二个说比第三个大两岁,以此类推。问第五个小朋友几岁了,第五个小朋友说3岁了。问第一个小朋友几岁?

     int a = 3;
                for (int i = 4; i > 0; i--)
                {
                    a = a + 2 * i;
                }
    
                Console.WriteLine("第一个小朋友" + a + "");

    4.1 () 2 () 3 ()4 = 4;问括号里我要填 (- 或 +)

                //把“+”或“-”看做1,-1,用for循环解题

    for (int a = -1; a <= 1; a = a + 2) { for (int b = -1; b <= 1; b = b + 2) { for (int c = -1; c <= 1; c = c + 2) { if ((1 + (a * 2) + (b * 3) + (c * 4)) == 4) { Console.WriteLine(a + " " + b + " " + c); } } } }
  • 相关阅读:
    KMP算法
    214. Shortest Palindrome
    5. Longest Palindromic Substring
    266. Palindrome Permutation
    Oracle 在not in中使用null的问题
    Oracle SQL性能优化技巧大总结
    EBS trace分析
    从SEQUENCE跳号说起
    使用WebService与Oracle EBS进行集成
    EBS xml publisher中文乱码
  • 原文地址:https://www.cnblogs.com/franky2015/p/4631642.html
Copyright © 2011-2022 走看看