找出来1到2020之间数位为2的数量。ios
不用特别去考虑,直接循环便可c++
求分子分母最小因子为1的。数组
跑两个for循环,写一个gcd就能够了网络
答案:2481215spa
int main() { // freopen("in.txt","r",stdin); ios::sync_with_stdio(false), cin.tie(0), cout.tie(0); int cnt = 0; for (int i = 1; i <= 2020; ++i) for (int j = 1; j <= 2020; ++j) cnt += __gcd(i, j) == 1; cout << cnt << endl; }
//另外一种写法 int main() { // freopen("in.txt","r",stdin); ios::sync_with_stdio(false), cin.tie(0), cout.tie(0); int cnt = 0; for (int i = 1; i <= 2020; ++i) for (int j = i + 1; j <= 2020; ++j) cnt += __gcd(i, j) == 1; cout << (cnt << 1) + 1 << endl; } //本质是同样的
蛇形图(20,20)这个位置的数是几。code
能够用等差数列作一下。ci
或者暴力跑it
答案:761io
// Author : RioTian // Time : 20/10/18 #include <bits/stdc++.h> using namespace std; typedef long long ll; int main() { // freopen("in.txt","r",stdin); ios::sync_with_stdio(false), cin.tie(0), cout.tie(0); bool flag = true; for (int x = 1, y = 1, k = 1;; k++) { if (x == 20 && y == 20) { cout << k << endl; break; } if (flag) if (x - 1) --x, ++y; else ++y, flag = false; else if (y - 1) ++x, --y; else ++x, flag = true; } }
跑步for循环
从2000/01/01到202010/01
周一跑2km,月初跑2km,其余都跑1km
直接模拟就行了
感受好多大佬都作出来了
思路和代码来自网络:
一共七个灯管,状态压缩枚举全部状态,而后dfs搜一下是否连通。
计算合格率,优秀率
扩大计算便可
从输入的年份开始枚举到9999,找到符合条件的就break;
找回文类型的年份+月份+日期
20200202 和 ABABBABA 类型
我的思路是直接暴力向上递推时间
算全部区间不一样字母的个数。
第一眼想到用树状数组解,但过久没写了。放弃。。。
直接暴力模拟,骗50%数据
赛后从新想了下,应该计算每一个字母的贡献值,假设每一个区间都是第一个出现的字母贡献,则每一个字母贡献值是左边没出现相同字母乘上右边到最后的长度
没怎么接触过,估计凉了。
emmm,彻底打表写前面的数据了
蒟蒻表示但愿不会打铁