【蓝桥杯三月刷题 第X天】——
💥前言
刷刷刷
😉解题报告
💥裁纸刀
☘️ 题目描述☘️
🤔一、思路:
(1)由题可以看出一张纸固定裁剪4次确定裁剪的框架,再裁剪几行几列裁剪为 裁剪次数 = 4 + 格子行 − 1 次 + ( 格子列 − 1 ) ∗ 格子行数 裁剪次数=4+格子行-1次+(格子列-1)*格子行数 裁剪次数=4+格子行−1次+(格子列−1)∗格子行数;
😎二、代码:
#include <iostream>
using namespace std;
int main()
{
cout << 4 + 19 + 21 * 20;
return 0;
}
💥刷题统计
☘️ 题目描述☘️
🤔一、思路:
(1)n很大需要为long类型
做题经过:
一开始直接for循环
天数
m
o
d
7
天数mod7
天数mod7循环累加大于
n
n
n后输出的,
n
n
n数据太大,然后直接将
(
n
)
m
o
d
每周总题数
(n)mod每周总题数
(n)mod每周总题数 ,看剩余几天进行累加输出;结果也是因为数据太大找了半天才发现错误是数据类型给小了;
😎二、代码:
#include <iostream>
using namespace std;
int main() {
long day, a, b, n, c, i;
cin >> a >> b >> n;
day = n / (a*5+b*2);
c = n % (a*5+b*2);
int re = 0;
for (i = 1; i <= 7; i++) {
if (i <= 5) {
re += a;
} else {
re += b;
}
if (re >= c) break;
}
if (!c) {
cout << day * 7;
} else {
cout << day * 7 + i;
}
return 0;
}
💥修剪灌木
☘️ 题目描述☘️
🤔一、思路:
(1)模拟了一下后发现这题是有规律的,然后画了下图,发现前半部分是
(
n
−
i
)
∗
2
(n - i) * 2
(n−i)∗2,后半部分是
(
i
−
1
)
∗
2
(i - 1) * 2
(i−1)∗2;
更清晰简介的代码
😎二、代码:
#include <iostream>
using namespace std;
int main()
{
int n;
cin >> n;
for (int i = 1; i <= n; i++) {
if (i <= n / 2) {
cout << (n - i) * 2 << endl;
} else {
cout << (i - 1) * 2 << endl;
}
}
return 0;
}