phase 2
This commit is contained in:
47
Assets/Test Assets/BacktrackingTest.cs
Normal file
47
Assets/Test Assets/BacktrackingTest.cs
Normal file
@@ -0,0 +1,47 @@
|
||||
using EscapeRoomEngine.Engine.Runtime.Utilities;
|
||||
using JetBrains.Annotations;
|
||||
using NaughtyAttributes;
|
||||
using UnityEngine;
|
||||
|
||||
namespace Test_Assets
|
||||
{
|
||||
public class BacktrackingTest : MonoBehaviour
|
||||
{
|
||||
public int[] values;
|
||||
public int target;
|
||||
|
||||
[Button]
|
||||
[UsedImplicitly]
|
||||
public void Closest()
|
||||
{
|
||||
PrintResult(Backtrack.Closest(new Range(0, values.Length).ToArray(), values, target));
|
||||
}
|
||||
|
||||
[Button]
|
||||
[UsedImplicitly]
|
||||
public void ClosestLower()
|
||||
{
|
||||
var backtrack = new Backtrack(new Range(0, values.Length).ToArray(), values, target);
|
||||
PrintResult(backtrack.BruteForceLower());
|
||||
}
|
||||
|
||||
[Button]
|
||||
[UsedImplicitly]
|
||||
public void ClosestHigher()
|
||||
{
|
||||
var backtrack = new Backtrack(new Range(0, values.Length).ToArray(), values, target);
|
||||
PrintResult(backtrack.BruteForceHigher());
|
||||
}
|
||||
|
||||
private void PrintResult(int[] indices)
|
||||
{
|
||||
var sum = 0;
|
||||
foreach (var i in indices)
|
||||
{
|
||||
Debug.Log(values[i]);
|
||||
sum += values[i];
|
||||
}
|
||||
Debug.Log($"sum: {sum}");
|
||||
}
|
||||
}
|
||||
}
|
||||
3
Assets/Test Assets/BacktrackingTest.cs.meta
Normal file
3
Assets/Test Assets/BacktrackingTest.cs.meta
Normal file
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 599a288d4210437698dc391e5cc84a8a
|
||||
timeCreated: 1671127266
|
||||
@@ -1,6 +1,5 @@
|
||||
using EscapeRoomEngine.Engine.Runtime.Utilities;
|
||||
using JetBrains.Annotations;
|
||||
using MathNet.Numerics.Distributions;
|
||||
using NaughtyAttributes;
|
||||
using UnityEngine;
|
||||
|
||||
@@ -11,7 +10,8 @@ namespace Test_Assets
|
||||
public NormalDistribution distribution = NormalDistribution.Standard;
|
||||
public int steps = 24;
|
||||
public int n = 1000000;
|
||||
public double sample;
|
||||
public float sample;
|
||||
public float percentile = 0.5f;
|
||||
|
||||
[Button]
|
||||
[UsedImplicitly]
|
||||
@@ -62,9 +62,16 @@ namespace Test_Assets
|
||||
Debug.Log(distribution.Cumulative(sample));
|
||||
}
|
||||
|
||||
private double[] Samples()
|
||||
[Button]
|
||||
[UsedImplicitly]
|
||||
public void InversePercentile()
|
||||
{
|
||||
var samples = new double[n];
|
||||
Debug.Log(distribution.InverseCumulative(percentile));
|
||||
}
|
||||
|
||||
private float[] Samples()
|
||||
{
|
||||
var samples = new float[n];
|
||||
for (var i = 0; i < n; i++)
|
||||
{
|
||||
samples[i] = distribution.Sample();
|
||||
|
||||
Reference in New Issue
Block a user