AI/PLL.cs
(开头部分) 3KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using Cube.Data;
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace CubeForm.AI
{
class PLL : IPattenMatch
{
Cube.Data.Cube cube;
PattenManager patten;
public event PattenMatchedDelegate PattenMatched;
public PLL(Cube.Data.Cube cube)
{
this.cube = cube;
patten = new PattenManager(cube);
}
public void Invoke()
{
if (CheckSkip())
{
Debug.WriteLine("Skipped PLL");
}
else
{
if (!SetEyes())
{
// 若第一次没有找到"眼",做一次角位移公式后再寻找
DoPLLAnglePatten();
SetEyes();
}
DoPLLAnglePatten();
if (!SetLine())
{
// 若第一次没有找到三色一线,做一次棱位移公式后再寻找
DoPLLSidePatten();
SetLine();
}
while (cube[new PositionVector(0, 1, 1)].Y != cube[new PositionVector(1, 1, 1)].Y)
{
DoPLLSidePatten();
}
}
var front_color = cube[new PositionVector(0, 1, 0)].Y;
while(cube[new PositionVector(0, 1, 1)].Y != front_color)
{
patten.U();
}
Debug.WriteLine("Whole Cube Done!");
PattenMatched?.Invoke(patten.GetRecord());
}
private bool SetEyes()
后面还有 72 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。