摘要:
分析题目,其实就是求非0值且不同的数的个数,用的是set,花了5秒多,这…… 先看代码: #include <iostream> #include <set> using namespace std; set <int> st; int main() { int n, x, y = 0; cin > 阅读全文
摘要:
如果用循环应该会超时,所以这里用数论比较好 先分析题意得知,可以加上去,也可以减下来 减下来是 n mod m (n % m) 往上加是 m - n mod m (m - n % m) 为什么呢? n % m的结果就是多出的,减掉整除 m - n % m的结果就是少的,加起来也可以整除 代码: #i 阅读全文
摘要:
这题其实不需要真得按照题意模拟,经过研究,其实我们发现,如果两个数之间绝对值大于等于2,就不行,否则可以 代码,不用数组: #include <iostream> #include <cmath> using namespace std; int main() { int n, a, b; cin 阅读全文
摘要:
这道题和数论似乎有些关系,但我怎么想也想不出公式(我才小学5年级),于是只好模拟了,两层循环,代码如下,707ms: #include <iostream> using namespace std; int main() { int a, b, c, d; cin >> a >> b >> c >> 阅读全文
摘要:
这个题可以枚举,但是会严重超时,所以我们分析一下 如果每次四个数加起来除不了3,也就是不可能满足a + A = b + B = c + C,满足这个条件只有可能分三份 第二,就算可以分三份,如果a或者b或者c > 四个数之和除3,也不行,所以代码来了: #include <iostream> usi 阅读全文