JavaScript 100%
\nvar validTicTacToe = function(board) {\n\n    let count = 0,\n        rows = new Array(3).fill(0),\n        cols = new Array(3).fill(0),\n        l = 0,\n    
```\nvar validTicTacToe = function(board) {\n\n    let count = 0,\n        rows = new Array(3).fill(0),\n        cols = new Array(3).fill(0),\n        l = 0,\n        r = 0,\n        curr;\n    for(let i = 0; i < 3; i ++) {\n        for(let j = 0; j < 3; j ++) {\n           curr = board[i][j];\n            if(curr === \'X\') {\n                count ++;\n                rows[i] ++;\n                cols[j] ++;\n                if(i === j ) l ++;\n                if(i + j === 2) r ++;\n            } else if (curr === \'O\') {\n                count --;\n                rows[i] --;\n                cols[j] --;\n                if(i === j) l --;\n                if(i + j === 2) r --;\n            }\n        }\n    }\n    if (count < 0 || count > 1) return false;\n    const xWin = rows.some(x => x === 3) || cols.some(x => x=== 3) || l === 3 || r === 3;\n    const oWin = rows.some(x => x === -3) || cols.some(x => x=== -3) || l === -3 || r === -3;\n    if(xWin && oWin) {\n        return false;\n    } \n    if( xWin && count === 0) {\n        return false;\n    } \n    if(oWin && count === 1) {\n        return false;\n    }\n    return true;\n}\n```
[]