@renju-note/quintet 0.9.0 → 0.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +39 -0
- package/package.json +1 -1
- package/quintet.d.ts +8 -0
- package/quintet_bg.js +28 -0
- package/quintet_bg.wasm +0 -0
package/README.md
CHANGED
|
@@ -4,6 +4,8 @@ Renju mate solver compilable to WebAssemby
|
|
|
4
4
|
|
|
5
5
|
## Run
|
|
6
6
|
|
|
7
|
+
### VCF
|
|
8
|
+
|
|
7
9
|
```
|
|
8
10
|
$ cargo build --release --example solve_vcf
|
|
9
11
|
|
|
@@ -37,6 +39,43 @@ Elapsed: 1.414262ms
|
|
|
37
39
|
H5,I6,E6,H9,F5,E5,C8,D7,C11,C9,C14,C13,D13
|
|
38
40
|
```
|
|
39
41
|
|
|
42
|
+
### VCT
|
|
43
|
+
|
|
44
|
+
```
|
|
45
|
+
$ cargo build --release --example solve_vct_dfpn
|
|
46
|
+
|
|
47
|
+
$ ./target/release/examples/solve_vct_dfpn x H8,I9,H7,J8,F8,H9,G9,H10,G11,F10,I10,G10,I8,J9,E10,K9,L9,G8,J10,K7,L6,K8,K6,L10,I7,J6,M9,I5,H4,F7,
|
|
48
|
+
G6,E6,D5,F5,G4
|
|
49
|
+
Player: White
|
|
50
|
+
|
|
51
|
+
Board:
|
|
52
|
+
|
|
53
|
+
15 . . . . . . . . . . . . . . .
|
|
54
|
+
14 . . . . . . . . . . . . . . .
|
|
55
|
+
13 . . . . . . . . . . . . . . .
|
|
56
|
+
12 . . . . . . . . . . . . . . .
|
|
57
|
+
11 . . . . . . o . . . . . . . .
|
|
58
|
+
10 . . . . o x x x o o . x . . .
|
|
59
|
+
9 . . . . . . o x x x x o o . .
|
|
60
|
+
8 . . . . . o x o o x x . . . .
|
|
61
|
+
7 . . . . . x . o o . x . . . .
|
|
62
|
+
6 . . . . x . o . . x o o . . .
|
|
63
|
+
5 . . . o . x . . x . . . . . .
|
|
64
|
+
4 . . . . . . o o . . . . . . .
|
|
65
|
+
3 . . . . . . . . . . . . . . .
|
|
66
|
+
2 . . . . . . . . . . . . . . .
|
|
67
|
+
1 . . . . . . . . . . . . . . .
|
|
68
|
+
A B C D E F G H I J K L M N O
|
|
69
|
+
|
|
70
|
+
Solving...
|
|
71
|
+
|
|
72
|
+
Elapsed: 8.763508458s
|
|
73
|
+
23 times
|
|
74
|
+
K11,K10,N12,M11,N8,H5,H6,L8,J5,J7,M5,L4,M6,K5,N5,L7,J4,G7,K3,L2,M4,M3,M8,M7,N7,I6,F3,G5,G3,O1,N2,K2,F4,F6,F1,F2,J3,J2,I3,H3,N4,N6,N1,N3,K4
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
Original game: https://www.renju.net/media/games.php?gameid=92337
|
|
78
|
+
|
|
40
79
|
## Release
|
|
41
80
|
|
|
42
81
|
```
|
package/package.json
CHANGED
package/quintet.d.ts
CHANGED
|
@@ -17,6 +17,14 @@ export function solve_vcf(blacks: Uint8Array, whites: Uint8Array, black: boolean
|
|
|
17
17
|
*/
|
|
18
18
|
export function solve_vct(blacks: Uint8Array, whites: Uint8Array, black: boolean, max_depth: number): Uint8Array | undefined;
|
|
19
19
|
/**
|
|
20
|
+
* @param {Uint8Array} blacks
|
|
21
|
+
* @param {Uint8Array} whites
|
|
22
|
+
* @param {boolean} black
|
|
23
|
+
* @param {number} max_depth
|
|
24
|
+
* @returns {Uint8Array | undefined}
|
|
25
|
+
*/
|
|
26
|
+
export function solve_vct_dfpn(blacks: Uint8Array, whites: Uint8Array, black: boolean, max_depth: number): Uint8Array | undefined;
|
|
27
|
+
/**
|
|
20
28
|
* @param {number} x
|
|
21
29
|
* @param {number} y
|
|
22
30
|
* @returns {number}
|
package/quintet_bg.js
CHANGED
|
@@ -84,6 +84,34 @@ export function solve_vct(blacks, whites, black, max_depth) {
|
|
|
84
84
|
}
|
|
85
85
|
}
|
|
86
86
|
|
|
87
|
+
/**
|
|
88
|
+
* @param {Uint8Array} blacks
|
|
89
|
+
* @param {Uint8Array} whites
|
|
90
|
+
* @param {boolean} black
|
|
91
|
+
* @param {number} max_depth
|
|
92
|
+
* @returns {Uint8Array | undefined}
|
|
93
|
+
*/
|
|
94
|
+
export function solve_vct_dfpn(blacks, whites, black, max_depth) {
|
|
95
|
+
try {
|
|
96
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
97
|
+
var ptr0 = passArray8ToWasm0(blacks, wasm.__wbindgen_malloc);
|
|
98
|
+
var len0 = WASM_VECTOR_LEN;
|
|
99
|
+
var ptr1 = passArray8ToWasm0(whites, wasm.__wbindgen_malloc);
|
|
100
|
+
var len1 = WASM_VECTOR_LEN;
|
|
101
|
+
wasm.solve_vct_dfpn(retptr, ptr0, len0, ptr1, len1, black, max_depth);
|
|
102
|
+
var r0 = getInt32Memory0()[retptr / 4 + 0];
|
|
103
|
+
var r1 = getInt32Memory0()[retptr / 4 + 1];
|
|
104
|
+
let v2;
|
|
105
|
+
if (r0 !== 0) {
|
|
106
|
+
v2 = getArrayU8FromWasm0(r0, r1).slice();
|
|
107
|
+
wasm.__wbindgen_free(r0, r1 * 1);
|
|
108
|
+
}
|
|
109
|
+
return v2;
|
|
110
|
+
} finally {
|
|
111
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
|
|
87
115
|
/**
|
|
88
116
|
* @param {number} x
|
|
89
117
|
* @param {number} y
|
package/quintet_bg.wasm
CHANGED
|
Binary file
|