binarybitstringlistoperationer.java
来自「Java版的SAT求解器」· Java 代码 · 共 34 行
JAVA
34 行
package positronic.satisfiability.bitstringlist;
import positronic.satisfiability.bitstring.BitString;
import positronic.satisfiability.bitstring.BitStringFixer;
import positronic.satisfiability.bitstring.IBitString;
import positronic.satisfiability.elements.Conjunction;
import positronic.satisfiability.elements.Disjunction;
import positronic.satisfiability.elements.IProblem;
import positronic.satisfiability.elements.Problem;
public class BinaryBitStringListOperationer extends Problem implements IProblem
{
private static final long serialVersionUID = 1L;
public static void main(String[] args) throws Exception
{
BinaryBitStringListOperationer o=new BinaryBitStringListOperationer();
o.addRule(new BitString("a","0"),new BitString("b","0"),new BitString("c","0"));
o.addRule(new BitString("a","0"),new BitString("b","1"),new BitString("c","1"));
o.addRule(new BitString("a","1"),new BitString("b","0"),new BitString("c","1"));
o.addRule(new BitString("a","1"),new BitString("b","1"),new BitString("c","0"));
System.out.println(o);
}
public void addRule(IBitString a,IBitString b,IBitString c) throws Exception
{
IProblem newRule=new Conjunction(new BitStringFixer(a),new BitStringFixer(b),new BitStringFixer(c));
if(this.isEmpty())
this.setClauses(newRule.getClauses());
else
this.setClauses(new Disjunction(this,newRule).getClauses());
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?