小白题解 Codeforces 804A Find Amir

(水题)题目链接:点击打开链接

题目大意:给定编号为1到n的点,一个人从一点出发走完这n个点,每段的花费为(i+j)mod(n+1),求最小花费

分析:由于花费是要(i+j)mod(n+1),则尽可能使每段路程的i+j都接近n+1,通过样例中n=10的情况,不难发现解法。从1到n,花费为0;从n走到2,花费为1;从2到n-1,花费为0;从n-1到3,花费为1;从3到n-2...这样循环往复,每次向右走花费为零,向左走花费为1。据此不难写出通项公式:cost  =(n-1)mod  2。

下面是AC代码

#include<cstdio>
int main()
{
    int n;
    scanf("%d",&n);
    printf("%d\n",(n-1)/2);
    return 0;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值