1 条题解

  • 0
    @ 2025-8-24 23:00:31

    自动搬运

    查看原文

    来自洛谷,原作者为

    avatar Submerge_TA

    搬运于2025-08-24 23:00:31,当前版本为作者最后更新于2024-07-07 19:58:53,作者可能在搬运后再次修改,您可在原文处查看最新版

    自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多

    以下是正文


    分类讨论题。

    • n0(mod2),m0(mod2)n \equiv 0 \pmod {2}, m \equiv 0 \pmod {2},第一次向右移动奇数格,第二次向上移动偶数格,第三次向右移动奇数格,共需 33 步。

    • n0(mod2),m1(mod2)n \equiv 0 \pmod {2}, m \equiv 1 \pmod {2},第一次向上移动奇数格,第二次向右移动偶数格,共需 22 步。

    • n1(mod2),m0(mod2)n \equiv 1 \pmod {2}, m \equiv 0 \pmod {2},第一次向右移动奇数格,第二次向上移动偶数格,共需 22 步。

    • n1(mod2),m1(mod2)n \equiv 1 \pmod {2}, m \equiv 1 \pmod {2},第一次向右移动奇数格,第二次向上移动偶数格,第三次向上移动奇数格,共需 33 步。

    由于 n,m2n,m\ge 2,可知一定存在合理的构造方案。

    代码:

    #include <bits/stdc++.h>
    using namespace std;
    #define int long long
    
    void solve() {
    	int a, b, s;
    	cin >> a >> b;
    	if (a % 2 == 1 && b % 2 == 0) cout << 2;
    	else if (a % 2 == 1 && b % 2 == 1) cout << 3;
    	else if (a % 2 == 0 && b % 2 == 1) cout << 2;
    	else cout << 3;
    	cout << endl;
    	return;
    }
    signed main() {
    	ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
    	int t;
    	cin >> t;
    	while (t--) solve();
    	return 0;
    }
    
    • 1

    【MX-X1-T1】「KDOI-05」简单的无限网格问题

    信息

    ID
    8493
    时间
    1000ms
    内存
    512MiB
    难度
    2
    标签
    递交数
    0
    已通过
    0
    上传者