文章目录
- 💥前言
- 😉解题报告
- 💥数的分解
- 🤔一、思路:
- 😎二、代码:
💥前言
上午没写,下午写了会被朋友拉出去耍,被冷风吹到了,而且被他坑了,根本没有玩骑着共享单车绕着城市转圈圈,被风兜了,回学校晕电出租车,人麻了,只写了一题,再也不和他出去了,溜了一圈,人快没了,呃呃呃呃……,题会补完的!!!
😉解题报告
💥数的分解
biu~
☘️ 题目描述☘️
🤔一、思路:
(1)三个 f o r for for循环进行判断 从 1 —— 2019 从1——2019 从1——2019的三个分解数,并且第三个循环需要判断三个数字是否包含 2 o r 4 2or4 2or4是否存在;最后输出时需要进行 / 6 /6 /6因为每次排列有 6 6 6种排列方法,而题目不需要重复的数字组合;
😎二、代码:
#include <iostream>
using namespace std;
bool check(int x, int y, int z) {
int ret = 0;
while (x) {
ret = x % 10;
if (ret == 2 || ret == 4) return false;
x /= 10;
}
while (y) {
ret = y % 10;
if (ret == 2 || ret == 4) return false;
y /= 10;
}
while (z) {
ret = z % 10;
if (ret == 2 || ret == 4) return false;
z /= 10;
}
return true;
}
int main()
{
int ans = 0;
int n;
cin >> n;
for (int i = 1; i < n; i++) {
for (int j = 1; j < n; j++) {
if (i == j) continue;
for (int k = 1; k < n; k++) {
if (i == k || j == k) continue;
if (i + j + k == n && check(i, j, k)) ans++;
}
}
}
cout << ans / 6;
return 0;
}