方法一:

1.注意数据范围

2.s=n/2下取整

3.带入公式

方法二:

以string类型读取,只有当string中只有一个字符且为‘1’时,才会输出0.

#include <iostream>
using namespace std;
int main()
{
    long long n;
    scanf("%lld",&n); //数据范围大,cin慢
    long long s=n/2;   //下取整
    s*=2;
    printf("%lld",s+n%2);
    return 0;
}
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        Long x=sc.nextLong();
        System.out.println((x/2)*2+x%2);  //带公式
    }
}
以string类型读取,只有当string中只有一个字符且为‘1’时,才会输出0.
import java.util.Scanner;
public class Main{
    public static void main(String[] args){
        Scanner in = new Scanner(System.in);
        String str = in.next();
        if(str.length()==1&&str.charAt(0)=='1'){
            System.out.println("0");
        }
        else{
            System.out.println(str);
        }
        
    }
}