zoukankan      html  css  js  c++  java
  • 逻辑题

    package jiang.test;
    /**
     * 某地有两个奇怪的村庄,张庄的人在星期一、三、五说谎,李村的人在星期二、四、六说谎。在其他日子他们说实话。
     * 一天,外地的王从明来到这里,见到两个人,分别向他们提出关于日期的题。两个人都说:”前天是我说谎的日子。” 
     * 如果被问的两个人分别来自张庄和李村,那么这一天是星期几? 
     * @author Administrator
     *
     */
    public class WhatDay {
    
        public static void main(String[] args) {
            boolean isLay = true;
            for(int beYes = 1;beYes <= 7;beYes++){
                int today = (beYes+2)%7;
                String ZhangZhang = "zhang";
                String LiCun =  "li";
                if(isRight(ZhangZhang,beYes,isLay)&&isRight(LiCun,beYes,isLay)){
                    System.err.println("这一天是星期"+today);
                }
            }
        }
        /**
         * 逻辑是否正确,正确就返回true
         * @param user
         * @param beYes
         * @param isLay
         * @return
         */
        public static boolean isRight(String user,int beYes,boolean isLay){
            int today = (beYes+2)%7;
            boolean belay = isLying(user,beYes);
            boolean lay = isLying(user,today);
            if(lay&&!belay==isLay){
                return true;
            }else if(!lay&&belay==isLay){
                return true;
            }else 
                return false;
        }
        /**
         * 是否说谎
         * @param user
         * @param day
         * @return
         */
        public static boolean isLying(String user,int day){
            if(user.equals("zhang")){
                if(day==1||day==3||day==5)
                    return true;
            }else if(user.equals("li")){
                if(day==2||day==4||day==6)
                    return true;
            }
            return false;
        }
    }
  • 相关阅读:
    我是如何用三小时搞出个赚钱产品的?
    搭建一个基于nuxt.js的项目
    栅格系统
    git使用
    通过JS获取屏幕高度,借助屏幕高度设置div的高度
    如何理解盒模型
    e.target.value 和 this 的区别
    组件化设计:弹窗的使用逻辑
    uni-app 入坑记
    MAC 系统快捷键
  • 原文地址:https://www.cnblogs.com/xinxin-ting/p/8796632.html
Copyright © 2011-2022 走看看