Codeforces Round #411 C.Find Amir (思维题)

来源:互联网 发布:java高并发项目源码 编辑:程序博客网 时间:2024/06/06 03:42

Find Amir

time limit per test1 second
memory limit per test256 megabytes
inputstandard input
outputstandard output
A few years ago Sajjad left his school and register to another one due to security reasons. Now he wishes to find Amir, one of his schoolmates and good friends.
There are n schools numerated from 1 to n. One can travel between each pair of them, to do so, he needs to buy a ticket. The ticker between schools i and j costs and can be used multiple times. Help Sajjad to find the minimum cost he needs to pay for tickets to visit all schools. He can start and finish in any school.
Input
The first line contains a single integer n (1 ≤ n ≤ 105) — the number of schools.
Output
Print single integer: the minimum cost of tickets needed to visit all schools.

Examples
Input
2
Output
0

Input
10
Output
4

题意:有n个学校需要参观,从i学校到j学校的车费为(i+j)%(n+1)
求最小费用。

分析:因为1+n,2+n-1 。。。。。这些都等于n+1。
所以需要支付的只是 n->2 n-1->3这些的费用。
所以可以得到需要支付的价格为 (n-1)/2.

AC代码

#include<stdio.h>int main(){    int n;    scanf("%d",&n);    printf("%d\n",(n-1)/2);}
0 0
原创粉丝点击