bitstringlistsubsetterdemo.java

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

JAVA
67
字号
package positronic.satisfiability.demos;import java.util.List;import positronic.satisfiability.bitstring.BitString;import positronic.satisfiability.bitstring.IBitString;import positronic.satisfiability.bitstringlist.BitStringList;import positronic.satisfiability.bitstringlist.BitStringListFixer;import positronic.satisfiability.bitstringlist.BitStringListSubsetter;import positronic.satisfiability.bitstringlist.IBitStringList;import positronic.satisfiability.elements.BooleanLiteral;import positronic.satisfiability.elements.Conjunction;import positronic.satisfiability.elements.IProblem;import positronic.satisfiability.solutions.PartialSolution;/** * <p>Title: BitStringListSubsetterDemo</p> * <p>Description: TBS</p> * <p>Copyright (c) 2005</p> * <p>Company: Positronic Software</p> * @author Kerry Michael Soileau * @version 1.0 */public class BitStringListSubsetterDemo{  public static void main(String[] args) throws Exception  {    IBitStringList slm=new BitStringList("y",new IBitString[]    {      new BitString("101"),      new BitString("0101"),      new BitString("101"),      new BitString("010"),    });    IBitStringList bsl=new BitStringList("slist",new IBitString[]    {      new BitString("000"),      new BitString("010"),      new BitString("0101"),      new BitString("011"),      new BitString("101"),      new BitString("000"),      new BitString("000"),    });    IProblem problem=new Conjunction(new BitStringListFixer(slm),      new BitStringListFixer(bsl),        new BitStringListSubsetter(slm,bsl));    System.out.println(problem);    List s=PartialSolution.solveList(problem);    if(s!=null && s.size()>0)    {      //for(int i=0;i<s.size();i++)      //  System.out.println(s.get(i));    	BooleanLiteral.interpret(s);    	System.out.println(slm);    	System.out.println(bsl);    }    else      System.out.println("No solution.");  }}

⌨️ 快捷键说明

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