链接:http://codeforces.com/problemset/problem/805/C
题意:给你几个学校,问你最少需要多少钱可以看遍全部的学校。
题解:数据很小,才10的5次方,所以直接做就行,很简单的一题,想想原来小学学过的高斯的1+...+100的思路,照着模仿一下,然后注意最后的一个方向问题就OK了。
写完了以后才发现这题才30多个测试数据,算是简单题了。
代码:
#include <iostream>
#include <string>
#include <cstring>
#include <stdio.h>
#include <cmath>
using namespace std;
typedef long long LL;
int n;
int main()
{
int i,j,ans,m,cen;
while(cin>>n)
{
ans=0;
if(n>=2)ans+=(n/2)-1;
if(n>2&&n&1)
{
cen=n/2+1;
m=min((cen*2+1)%(n+1),(cen*2-1)%(n+1));
ans+=m;
}
cout<<ans<<endl;
}
}