naturalnumbermapperdemo.java

来自「Java版的SAT求解器」· Java 代码 · 共 39 行

JAVA
39
字号
package positronic.satisfiability.demos;

import java.util.List;

import positronic.satisfiability.elements.BooleanLiteral;
import positronic.satisfiability.elements.Conjunction;
import positronic.satisfiability.elements.IProblem;
import positronic.satisfiability.naturalnumber.INaturalNumber;
import positronic.satisfiability.naturalnumber.NaturalNumber;
import positronic.satisfiability.naturalnumber.NaturalNumberFixer;
import positronic.satisfiability.naturalnumber.NaturalNumberMapper;
import positronic.satisfiability.solutions.PartialSolution;

public class NaturalNumberMapperDemo
{
	public static void main(String[] args) throws Exception
  {
    INaturalNumber abscissa=new NaturalNumber("abscissa");
    INaturalNumber ordinate=new NaturalNumber("ordinate");
    
    IProblem nnm1=new NaturalNumberMapper(
    		abscissa,new long[]{11,2,3,4,5},
    		ordinate,new long[]{23,45,16,36,78});
    IProblem nnf=new NaturalNumberFixer(ordinate,45);
    IProblem problem=new Conjunction(nnm1,nnf);
    System.out.println(problem);
    
    List s=PartialSolution.solveList(problem);
		if(s!=null && s.size()>0)
    {
      BooleanLiteral.interpret(s);
    	System.out.println("abscissa= "+abscissa);
    	System.out.println("ordinate= "+ordinate);
    }
    else
      System.out.println("No solution.");
   }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?