慎看 -- 个人认为的最小长度题解

0  •  1年前


题解如下:

#include <iostream>

/*
本题解在使用时请删去注释,以防止错误;
并且,请您多思考,不要滥用题解;
该题解认为 1 是正面,0 是反面,
下文不再赘述。
*/

int main(){
    int a,x=0; // 定义输入参数值与统计值,参数值可以通过 for 循环重复利用
    for (int i=0;i<4;i=i+1){
        std::cin>>a; // 输入参数值,是正或反
        if (a==1) // 如果是正面,则
            x=x+1; // 统计值加 1
    }
    // 结束输入
    if(x>=2) // 如果正面有两次及以上
        x=4-x; // 就需要反转 4-x 次
    // 如果没有,就只需要反转 x 次
    std::cout<<x;
}
结果
代码长度198
最大使用内存236KB

欢迎各位再深入探讨该题目!


评论:

所以 Markdown 格式怎么不显示???


0  •  1年前

这个平台应该没有 Markdown


wangjiajian  •  1年前

题解如下:

#include <iostream>

/*
本题解在使用时请删去注释,以防止错误;
并且,请您多思考,不要滥用题解;
该题解认为 1 是正面,0 是反面,
下文不再赘述。
*/

int main(){
    int a,x=0; // 定义输入参数值与统计值,参数值可以通过 for 循环重复利用
    for (int i=0;i<4;i=i+1){
        std::cin>>a; // 输入参数值,是正或反
        if (a==1) // 如果是正面,则
            x=x+1; // 统计值加 1
    }
    // 结束输入
    if(x>=2) // 如果正面有两次及以上
        x=4-x; // 就需要反转 4-x 次
    // 如果没有,就只需要反转 x 次
    std::cout<<x;
}

代码长度 198

最大使用内存:236KB

欢迎各位再深入探讨该题目!


ZZQ  •  1年前

大部分可以用,只是某些功能(如删除线)用不了而已


ZZQ  •  1年前

你看看这种怎么样


ZZQ  •  1年前

我的这样:

#include<iostream>
using namespace std;
bool a;
short ans;
int main()
{
	for(int i=1;i<=4;++i){
		cin>>a;
		if(a==1)
		{
			ans++;
		}
	}
	if(ans==2)
		cout<<2;
	else
		cout<<ans%2;
    return 0;
}

同样用到规律,但代码量逊色一些


凌艺樽  •  3个月前