From eb1a977adb7d64d456ffbdb15a26856a387dc16a Mon Sep 17 00:00:00 2001 From: yoyo Date: Mon, 4 Nov 2024 02:14:28 +0900 Subject: [PATCH] add readme --- README.md | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 52 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index c26c261..cff2b5a 100644 --- a/README.md +++ b/README.md @@ -1 +1,52 @@ -# yo-compiler \ No newline at end of file +# yo-compiler + +```c +package main + +type Any struct { + x,y int; + arr [8]int; +}; + +fn main() int { + arr := [8]int{}; + return nqueen(0, 0, arr[:]); +}; + +fn fib(n int) int{ + if n <= 1 { + return n; + }; + return fib(n-1) + fib(n-2); +}; + +fn nqueen(r,ans int, arr []int) int{ + if r == len(arr) { + return ans + 1; + }; + for c:=0; c < len(arr); c=c+1{ + arr[r] = c; + if canput(r, arr) { + ans = nqueen(r+1, ans, arr); + }; + }; + return ans; +}; + +fn canput(r int, arr []int) bool { + for i:=0; i < r; i=i+1 { + if arr[r] == arr[i] || abs(arr[r] - arr[i]) == abs(r - i) { + return false; + }; + }; + return true; +}; + +fn abs(x int) int { + if x < 0 { + return x * -1; + }; + return x; +}; + +```