1 条题解

  • 0
    @ 2025-5-22 15:54:29

    题意分析

    这道题目描述了一个数字变换的游戏流程,要求我们根据给定的初始数字n0n_0,模拟整个计算过程,并输出关键步骤的结果。

    游戏规则包含以下步骤:

    1. 计算n1=3×n0n_1 = 3 \times n_0,判断其奇偶性
    2. 根据奇偶性计算n2n_2
      • 偶数:n2=n1/2n_2 = n_1/2
      • 奇数:n2=(n1+1)/2n_2 = (n_1 + 1)/2
    3. 计算n3=3×n2n_3 = 3 \times n_2
    4. 计算n4=n3/9n_4 = n_3/9(整数除法)
    5. 根据n1n_1的奇偶性反向推导n0n_0

    题目要求我们输出n1n_1的奇偶性和n4n_4的值。

    解题思路

    1. 输入处理:读取输入数字直到遇到0为止
    2. 模拟计算过程
      • 对每个n0n_0计算n1=3×n0n_1 = 3 \times n_0
      • 判断n1n_1的奇偶性
      • 根据奇偶性计算n2n_2
      • 计算n3=3×n2n_3 = 3 \times n_2
      • 计算n4=n3/9n_4 = n_3/9
    3. 输出结果:按照格式输出测试用例编号、n1n_1的奇偶性和n4n_4的值 判断奇偶性。由于计算步骤明确,实现起来相对直接。

    C++代码实现

    #include <iostream>
    #include <algorithm>
    #include <cmath>
    #include <vector>
    #include <string>
    #include <cstring>
    using namespace std;
    
    int main()
    {
    	int num,i=1;
    	while(cin>>num)
    	{
    		if(num==0)
    			break;
    		cout<<i<<". ";
    		i++;
    		if(num%2)
    			cout<<"odd ";
    		else
    			cout<<"even ";
    		cout<<num/2<<endl;
    	}
    	return 0;
    }
    
    • 1

    信息

    ID
    2975
    时间
    1000ms
    内存
    256MiB
    难度
    10
    标签
    递交数
    2
    已通过
    1
    上传者