题解:洛谷 B3984 [语言月赛 202406] 编程学习

【题目来源】

洛谷:[B3984 语言月赛 202406] 编程学习 - 洛谷

【题目描述】

小 B 喜欢学习编程,他已经做了 \(x\) 道题目。在接下来的一段时间,小 B 每天可以做 \(1\) 道或 \(2\) 道编程题。小 B 至少还需要多少天,才能做到 \(y\) 道题?

【输入】

输入一行两个整数 \(x,y\)

【输出】

输出一行一个整数,表示最小的天数。

【输入样例】

3 6

【输出样例】

2

【算法标签】

《洛谷 B3984 编程学习》 #顺序结构# #语言月赛# #2024# #O2优化#

【代码详解】

#include <bits/stdc++.h>
using namespace std;

#define int long long  // 将int定义为long long类型,避免大数溢出
int x, y;  // x: 区间起点,y: 区间终点

signed main()  // 使用signed main()替代int main(),因为int被重定义为long long
{
    cin >> x >> y;  // 读入区间起点和终点
    
    // 计算在[x, y]区间内,满足条件的整数个数
    // 公式: (y-x+1)/2
    // 这个公式计算从x到y(包含两端)的整数中,奇偶性相同的数字个数
    // 具体来说,是计算与x同奇偶的整数个数
    cout << (y - x + 1) / 2 << endl;
    
    return 0;
}

【运行结果】

3 6
2
posted @ 2026-02-17 08:17  团爸讲算法  阅读(2)  评论(0)    收藏  举报