Go: package main

import (
	"bufio"
	"fmt"
	"os"
	"strconv"
)

var sc = bufio.NewScanner(os.Stdin)

func main() {
	sc.Scan()
	F, _ := strconv.Atoi(sc.Text())
	fmt.Println((F - 30) /2)
}

C++: #include <iostream>
using namespace std;
int main(void){
  int f;
  cin>>f;
  cout<<(f-30)/2<<endl;
}

C++: #include <iostream>
using namespace std;
int main(void){
    // Your code here!
    int x;
    cin>>x;
    cout<<(x-30)/2<<endl;
}

C++: #include<iostream>
using namespace std;
int main(void){
	int F=0;
	cin>>F;
	cout<<(F-30)/2<<endl;
	return 0;
}

C++: #include <iostream>
using namespace std;
int main(){int F;
    cin>>F;cout<<(F-30)/2<<endl;
    return 0;
}

C++: #include <iostream>
using namespace std;
int main(void){
    
    int F;
    cin>>F;
    cout<<(F-30)/2<<endl;
}

C++: #include <bits/stdc++.h>
using namespace std;
int main(){
    int a;
    cin >> a;
    cout << (a-30)/2 << endl;
}

C++: #include <iostream>
using namespace std;


  
int main(){
  

  int F;
  cin >>  F;
  cout  << (F-30)/2 << "\n";
 return 0;
}

C++: #include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define rep(i, n) for (int i = 0; i < (int)(n); i++)

int main() {
    int f; cin >> f;
    cout << (f-30)/2 << endl;
}

C++: #include <bits/stdc++.h>
#include <cctype>
#include <cstring>
using namespace std;

int main(){
	int x;
	cin >> x;
	x = (x - 30) / 2;
	cout << x << endl;
}

C++: #include <iostream>
using namespace std;
int main(void){
    int f;
    cin>>f;
    cout<<(f-30)/2<<endl;
}

C++: #include<bits/stdc++.h>
using namespace std;
int main(){

  int F;
  cin>>F;

  cout<<(F-30)/2<<endl;
  return 0;
}

C++: #include<iostream>

using namespace std;
int main()
{
    int f;
    cin >> f;
    cout << (f-30)/2 << endl;
    return 0;
}

C++: #include<iostream>
#define REP(i,n) for(int i=0;i<n;i++)
#define INF 99999999

using namespace std;

int main(void){
	int f;
	cin >> f;
	cout << (f - 30) / 2 << endl;
	return 0;
}

C++: #include<iostream>
using namespace std;

int main(){
    int n;
    cin >> n;
    cout << (n-30)/2 << endl;
    return 0;
}

C++: #include"bits/stdc++.h"
using namespace std;


int main()
{
    int f;
    cin >> f;
    cout << (f-30)/2 << endl;
    return 0;
}

C++: #include<iostream>
using namespace std;

int main(){
    long int F,C;
    cin >> F;
    C=(F-30)/2;
    cout << C << '\n';

    return 0;

}

C++: #include <iostream>
using namespace std;
int main(void){
    int f;
    cin >> f;
    cout << (f-30)/2 << endl;
}

C++: #include <iostream>
using namespace std;

int main(){
  int F, C;
  cin>> F;

  C=(F-30)/2;

  cout<< C << endl;

  return 0;
}

C++: //PCK2018予選問題
#include "bits/stdc++.h"
using namespace std;
void math(int x){
    cout << (x-30)/2 << endl;
}

int main(){
  int f;
  cin >> f;
  
  math(f);

  return 0;
   
}

C++: #include<iostream>
using namespace std;
int F,C;
int main(){
cin>>F;
C=(F-30)/2;
cout<<C<<endl;
return 0;
}

C++: #include <iostream>
using namespace std;
int main(void){
    int f;
    cin>>f;
    cout<<(f-30)/2<<endl;
}

C++: #include<iostream>
#include<vector>
#include<cmath>
#define _GLIBCXX_DEBUG
using namespace std;

int main(){
  int F;
  cin>>F;
  cout<<(F-30)/2<<endl;
  return 0;
}

C++: #include <iostream>
using namespace std;
int main(){
    double a;
    cin >> a;
    cout << (a-30)/2 << endl;

    return 0;
}

C++: #include<bits/stdc++.h>
using namespace std;
int main(void)
{
	int f;
	
	cin>>f;
	
	cout<<(f-30)/2<<endl;
	
	return 0;
}

C++: #include<bits/stdc++.h>

#define rep(i,n) for (int i =0;i<(n);i++)
#define LL long long 

using namespace std;

int main(){
    int f;
    cin >>f;
    cout <<(f-30)/2<<endl;
    return 0;
}

C++: #include <iostream>
using namespace std;
int main(void){
    // Your code here!
    int a;
    cin>>a;
    cout<<(a-30)/2<<endl;
}

C++: #include <iostream>
using namespace std;
int main(void){
    int F;
    cin>>F;
    cout<<(F-30)/2<<endl;
    
}

C++: #include <cstdio>
#include <utility>
using namespace std;

#ifdef __linux
#define _U(s) s##_unlocked
#else
#define _U(s) _##s##_nolock
#define _CRT_DISABLE_PERFCRIT_LOCKS
#endif
#define gcu _U(getchar)
#define pcu _U(putchar)
#define _DEF(r, n, ...) inline r n(__VA_ARGS__) noexcept
#define _T template <typename T>
#define _HT template <typename H,typename... T>
#define _OP(t) inline operator t()
struct _in {
#ifdef _GLIBCXX_STRING
	_OP(string){string s;for(char c;c=gcu(),c!=' '&&c!='\n'&&c!=EOF;)s+=c;return s;}
#define _S
#endif
	_OP(char){char c=gcu();gcu();return c;}
	_OP(double){double d; scanf("%lf",&d); gcu();return d;}
	_T _OP(T){T n{},m{1},c;if((c=gcu())=='-')m=-1,c=gcu();do{n=10*n+(c-'0'),c=gcu();}while(c>='0'&&c<='9');return m*n;}
} in;
#define _SCAN(...) _DEF(bool,scan,__VA_ARGS__)
#ifdef _S
_SCAN(string &o) {int c{gcu()};if(c==EOF)return false;else{ungetc(c,stdin);string t=move(in);o=t;return true;}}
#endif
_T _SCAN(T &o) {int c{gcu()};return c==EOF?false:(ungetc(c,stdin),o=in,true);}
_HT _SCAN(H &h,T&&... t){return scan(h)&&scan(t...);}
#define _OUT(...) _DEF(void,out,__VA_ARGS__)
#define _OUTL(...) _DEF(void,outl,__VA_ARGS__)
_OUT(bool b){pcu('0'+b);}
_OUT(const char *s){while(*s)pcu(*s++);}
_OUT(char c){pcu(c);}
#ifdef _S
_OUT(string &s){for(char c:s)pcu(c);}
#endif
_T _OUT(T n){static char b[20];char *p=b;T m=n<0?pcu('-'),-1:1;
	if(!n)*p++='0';else while(n)*p++=(char)(n%10*m+'0'),n/=10;while(p!=b)pcu(*--p);}
_OUTL(){out('\n');}
#ifdef _GLIBCXX_VECTOR
	_T _OUT(vector<T> &v){for(T &x:v)out(&x == &v[0]?"":" "),out(x);}
#endif
	_HT _OUT(H &&h, T... t){out(h);out(t...);}
	template <typename... T> _OUTL(T... t){out(t...);outl();}
	struct range{
		int e,b=0,s=1;range(int _b,int _e,int _s):e(_e),b(_b),s(_s){} range(int _b,int _e): e(_e), b(_b){} range(int _e):e(_e){}
		struct it{int v,s; it(int _v,int _s):v(_v),s(_s){} operator int()const{return v;} operator int&(){return v;}int operator*()const{return v;}
			it& operator++(){v+=s;return *this;} }; it begin(){return {b,s};} it end(){return {e,s};}};
#define times(i,n) for(int i=n;i;i--)

int main() {
	outl(((int) in - 30)/2);
}

C++: #include<iostream>
using namespace std;

int main(){
 
  int f;

  cin >> f;

  cout << (f-30)/2 << endl;

  return 0;

}

C++: #include <iostream>
using namespace std;
int main(void){
    int F;
    cin>>F;
    cout<<(F-30)/2<<endl;
}

C++: #include<bits/stdc++.h>

using namespace std;
main(){
	int a;
	cin >> a;
	int b=a-30;
	int c=b/2;
	printf("%d\n",c);
}

C++: #include <iostream>

using namespace std;

int main(){
    int f;
    cin >> f;
    int result = (f - 30) / 2;
    cout << result << endl;
    return 0;
}

C++: #include<bits/stdc++.h>
using namespace std;
main(){
	int F;
	cin>>F;
	printf("%d\n",(F-30)/2);
}

C++: #include<iostream>
using namespace std;
int main(){
  int F;
    cin>>F;
  if(F%2==0){
    cout<<(F-30)/2<<endl;
  }
}

C++: #include <iostream>
using namespace std;
int main(){
    int F;
    int C;
    
    
    
    cin>>F;
    cin>>C;
    C=(F-30)/2;
    cout<<(F-30)/2<<endl;
     
     
     
    
    
   
   
   return 0;
}

C++: #include <bits/stdc++.h>
#include <assert.h>
using namespace std;
using i64 = long long;

int main()
{
  i64 f;
  cin >> f;
  cout << (f - 30) / 2 << endl;
  return 0;
}

C++: #include "bits/stdc++.h"
#define in std::cin
#define out std::cout
#define rep(i,N) for(LL i=0;i<N;++i)
typedef long long int LL;

int main()
{
	LL F;
	in >> F;
	out << (F - 30) / 2 << std::endl;
}

C++: #include <iostream>
using namespace std;
int main(void){
    int a;
    cin >> a;
    cout << (a-30)/2 << endl;
    
}

C++: #include<iostream>
using namespace std;

int main(){
    int F;
    cin>>F;
    cout<<(F-30)/2<<endl;
    return 0;

}