原題鏈結
x學姐小時候常常思考一些數學問題,比如「雞兔同籠」「百錢買百雞」等等。 有一天,x學姐夢見了乙個很帥的小哥哥,他說自己叫tourist,她給了x學姐乙個問題: 給出乙個正整數n,當滿足「i*j+i+j=n」時, i,j有多少種不同的組合,x學姐被小哥哥的美色所迷,失去了計算能力,你能幫幫她嘛?(0 < i <= j)
input
第一行包含乙個t(t <= 2000)。在之後的t行,每一行包含乙個整數n (0<=n <= 1e10)。
output
對於每個n,輸出一行答案,表示組合的個數。
sample input21
3sample output01
在正整數中選擇i,j使得等式i*j+i+j = n,求有多少種組合數
思路:將等式化為(i+1)(j+1)-1 = n,那麼就可得到(i+1)(j+1) = n+1,只需要滿足n+1對i+1取余為0就可以,因為j是大於等於i的
**如下
#include
#include
#include
#include
using namespace std;
typedef
long
long ll;
int t,ans,i;
ll n,sum;
intmain()
printf
("%d\n"
,ans);}
return0;
}
990 等式方程的可滿足性 leetcode
給定乙個由表示變數之間關係的字串方程組成的陣列,每個字串方程 equations i 的長度為 4,並採用兩種不同的形式之一 a b 或 a b 在這裡,a 和 b 是小寫字母 不一定不同 表示單字母變數名。只有當可以將整數分配給變數名,以便滿足所有給定的方程時才返回 true,否則返回 false...
990 等式方程的可滿足性 medium
給定乙個由表示變數之間關係的字串方程組成的陣列,每個字串方程 equations i 的長度為 4,並採用兩種不同的形式之一 a b 或 a b 在這裡,a 和 b 是小寫字母 不一定不同 表示單字母變數名。只有當可以將整數分配給變數名,以便滿足所有給定的方程時才返回 true,否則返回 false...
LeetCode 990 等式方程的可滿足性 中等
給定乙個由表示變數之間關係的字串方程組成的陣列,每個字串方程 equations i 的長度為 4,並採用兩種不同的形式之一 a b 或 a b 在這裡,a 和 b 是小寫字母 不一定不同 表示單字母變數名。只有當可以將整數分配給變數名,以便滿足所有給定的方程時才返回 true,否則返回 false...