3632 - 谁在撒谎?
时间限制 : 1 秒
内存限制 : 128 MB
猫说狗在撒谎。
狗说猪在撒谎。
猪说猫狗都在撒谎。
请编程找出到底谁在撒谎?
题目输入
题目输出
假如猫狗猪都撒谎了,应输出000
输入/输出样例
输入格式
输出格式
C++解答
#include <iostream> using namespace std; int a[3]; void f(int idx) { if(idx==3) { if((a[0]!=a[1])&&(a[1]!=a[2])&&(a[2]==1&&(a[0]+a[1])==0||a[2]==0&&(a[0]+a[1])!=0)) { for(int i=0;i<3;i++) cout<<a[i]; cout<<endl; } return; } a[idx]=0; f(idx+1); a[idx]=1; f(idx+1); } int main() { f(0); return 0; }
Java解答
public class Main { public static void main(String[] args) { for (int i = 0; i <= 1; i++) { for (int j = 0; j <= 1; j++) { for (int k = 0; k <= 1; k++) { if(((i==1&&j==0)||(i==0&&j==1))&& ((j==1&&k==0)||(j==0&&k==1))&& ((k==1&&i+j==0)||(k==0&&i+j>=1))){ // System.out.print("甲\t"); System.out.print(i==1?1:0); // System.out.print("乙\t"); System.out.print(j==1?1:0); // System.out.print("丙\t"); System.out.print(k==1?1:0); } } } } } }