列表

详情


NC232257. 赢的次数

描述

Alice 和 Bob在玩游戏。一共玩了 n局。二者的胜利的概率都是 。求 Alice 赢几次的可能性最大。输出最有可能赢几次,如果有多个结果,从小到大输出。

输入描述

一行一个数,为 n

输出描述

一行若干个数,每个数之间一个空格,表示有可能赢的次数。

示例1

输入:

2

输出:

1

说明:

1表示赢,用0表示输的话,共有
00
01
10
11
这四种情况,显然赢1次的概率最大

示例2

输入:

5

输出:

2 3

原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

Java 解法, 执行用时: 41ms, 内存消耗: 10796K, 提交时间: 2023-08-04 09:48:24

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
         int a = sc.nextInt();
         if(a%2==0)System.out.println(a/2);
         else System.out.println(a/2+" "+(a+1)/2);
    }
}

Python3 解法, 执行用时: 41ms, 内存消耗: 4536K, 提交时间: 2023-08-04 09:42:49

k = int(input())
if k % 2 == 0:
    print(k//2)
else:
    print(k//2, k//2 + 1)

Go 解法, 执行用时: 3ms, 内存消耗: 1180K, 提交时间: 2023-08-04 09:41:19

package main

import "fmt"

func main() {
    var k int
    fmt.Scanf("%d", &k)
	if k % 2 == 0 {
		fmt.Println(k/2)
	} else {
		fmt.Printf("%d %d", k/2, k/2+1)
	}
}

PHP 解法, 执行用时: 13ms, 内存消耗: 6380K, 提交时间: 2023-08-04 09:36:44

<?php

$input = intval(fgets(STDIN));
$output = $input % 2 == 0 ? [$input / 2] : [($input-1)/2, ($input+1)/2];
echo implode(' ', $output);

C++ 解法, 执行用时: 3ms, 内存消耗: 420K, 提交时间: 2023-08-08 15:20:55

#include <cstdio>

int main() {
    int n;
    scanf("%d", &n);
    if (n%2) printf("%d %d", n/2, n/2+1);
    else printf("%d", n/2);
    return 0;
}

上一题