Given a positive integer K. Find the number of ordered pairs of positive integers (a,b) where 1≤a<b<K such that a+b ≤ K.
 
Example 1:
Input:
K = 2
Output:
0
Explanation:
There are no solutions for K = 2.
Example 2:
Input:
K = 4
Output:
2
Explanation:
There are 2 solutions:- (1,2) and (1,3).
 
Your Task:
You don't need to read input or print anything. Your task is to complete the function numOfWays() which takes an Integer K as input and returns the number of solutions for a and b (1≤a<b<K) such that a+b ≤ K.
 
Expected Time Complexity: O(1)
Expected Auxiliary Space: O(1)
 
Constraints:
1 <= K <= 10^{5}

Source: geeksforgeeks | Difficulty: EASY
Tags: Mathematics

Starter code: #User function Template for python3



class Solution:

    def numOfWays(self, K):

        # code here

Solutions:
class Solution:

	def numOfWays(self, K):
		return K // 2 * (K % 2 + K - 2) // 2


class Solution:

	def numOfWays(self, K):
		ans = 0
		for i in range(3, K + 1):
			if i % 2 == 0:
				ans += i // 2 - 1
			else:
				ans += i // 2
		return ans


class Solution:

	def numOfWays(self, K):
		K = K - 2
		if K / 2 % 2 == 0:
			n = K // 2
		else:
			n = K // 2 + 1
		v = n * (2 * K + (n - 1) * -2) // 2
		return v


import math

class Solution:

	def numOfWays(self, K):
		K = K - 2
		n = math.ceil(K / 2)
		v = n * (2 * K + (n - 1) * -2) // 2
		return v