Go: package main

import (
	"fmt"
	"strings"
	"bufio"
	"os"
	// "reflect"
	"strconv"
)

func oneLineInt(s string) []int {
	temp := strings.Split(s, " ")
	// fmt.Println(len(temp))
	ints := []int{}
	for _, elem := range(temp) {
		int_elem, _ := strconv.Atoi(elem)
		ints = append(ints, int_elem)
	}
	return ints
}

func coinCount(ints []int) int {
	cons := ints[0]
	bonus := ints[1]
	target := ints[2]
	count := 0
	day := 0
	var dc int
	for day_count, _ := range(make([]int, target)) {
		day++
		if day % 7 == 0 {
			count += bonus
		}
		count += cons
		if count >= target {
			dc = day_count + 1
			break
		}
	}
	return dc
}

func main() {
	scanner := bufio.NewScanner(os.Stdin)
	var txt string
	if scanner.Scan() {
		txt = scanner.Text()
	}
	ints := oneLineInt(txt)
	// fmt.Println(ints[1])
	// fmt.Println(reflect.TypeOf(ints[0]))
	result := coinCount(ints)
	fmt.Println(result)
}

C++: #include<iostream>
using namespace std;
int main(){
  int A,B,C;
  int sum=0;
  int count=0;
  cin >> A >> B >> C;
  if(C<=A){
    cout << 1 << endl;
  }else{
      while(C>0){
        count++;
        if(count%7!=0){
          //sum+=A;
          C=C-A;
        }else{
          //sum+=B+A;
          C=C-(A+B);
        }
      }
      cout << count << endl;
  }
}

C++: #include <iostream>
using namespace std;
int main(void){
    int A,B,C,coin,day;;
    coin=0;
    day=0;
    cin>>A>>B>>C;
    while(1){
       if(coin>=C){
           break;
       } 
       coin=A+coin;
       day=day+1;
       if(day%7==0){
           coin=coin+B;
       }
    }
    cout<<day<<endl;
}

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

int main() {
  int a, b, c;
  cin >> a >> b >> c;
  
  int i, sum;
  sum = 0;
  for (i=1; ; i++) {
    sum += a;
    if (i%7 == 0) sum += b;
    if (sum >= c) break;
  }
  
  cout << i << endl;
  
  return 0;
}

C++: #include<iostream>
using namespace std;
int main(){
    int A, B, C, week, amari,i , day = 0;
    cin >> A >> B >> C;
    week = C/(7*A + B);
    amari = C%(7*A + B);
    for(i=0;i<7;i++){
        if(amari<=A*i){
            break;
        }
    }
    day = week*7 + i;
    cout << day << endl;
    
    return 0;
}

C++: #include <iostream>
using namespace std;
int main(void){
    int a,b,c;
    cin >> a >> b >> c;
    int score = 0;
    for(int day = 1; ; day++){
        score += a;
        if(day % 7 == 0){
            score += b;
        }
        if(score >= c){
        cout << day << endl;
        break;
        }
    }
}

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

int main(){
    int a, b, c;
    cin >> a >> b >> c;
    int ans;
    ans = c / (7 * a + b);
    int sa = c % (7 * a + b);
    vector<int> s = {a,a,a,a,a,a,a+b};
    int cnt = 0;
    while (sa > 0){
        sa -= s[cnt];
        cnt++;
    }
    ans = ans * 7 + cnt;
    cout << ans << endl;
}

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

int main(){
  int a,b,c,d,e,f,g;
  scanf("%d%d%d",&a,&b,&c);
  d = c / (a*7+b);
  e = c % (a*7+b);
  f = e / a;
  g = e % a;
  if(g == 0){
    printf("%d\n",min(7*d+f,7*(d+1)));
  }
  else{
    printf("%d\n",min(7*d+f+1,7*(d+1)));
  }
}

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

int count(int A, int B, int C)
{
    int i = 0;
    int c = 0;
    while (c < C)
    {
        i++;
        c += A;
        if (i % 7 == 0)
        {
            c += B;
        }
    }
    return i;
}
int main()
{
    int A, B, C;
    cin >> A >> B >> C;
    cout << count(A, B, C) << endl;
    return 0;
}

C++: #include<iostream>
#include<string>
#include<algorithm>
#include<vector>
#include<queue>
#include<map>
#include<math.h>
#include<iomanip>
#include<set>
#include<numeric>
#include<cstring>
#include<cstdio>
#include<functional>
#include<bitset>
#include<limits.h>
#include<cassert>
#include<iterator>
#include<complex>
#include<stack>
#include<sstream>
#include<iterator>
#include<list>

using namespace std;

typedef  long long int lint;

#define rep(i, n) for (lint i = 0; i < n; i++)
#define sort(v) sort((v).begin(), (v).end())
#define reverse(v) reverse((v).begin(), (v).end())
#define upper(v,hoge) upper_bound(v.begin(),v.end(),hoge)
#define lower(v,hoge) lower_bound(v.begin(),v.end(),hoge)
#define mp make_pair
#define enld endl

int main() {
	lint A, B, C;
	cin >> A >> B >> C;
	lint now = 0;
	lint cnt = 0;
	while (1) {
		now += A;
		if (cnt % 7 == 6) {
			now += B;
		}
		if (now >= C) {
			cout << cnt+1 << endl;
			break;
		}
		cnt++;
	}
}

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

int main()
{
	int a, b, c;

	cin >> a >> b >> c;
	cout << (c / (a * 7 + b)) * 7 + min((c % (a * 7 + b) + a - 1) / a, 7) << endl;

	return 0;
}

C++: #include<iostream>
#include<vector>
#include<algorithm>
#include<cctype>
#include<utility>
#include<string>
#include<cmath>
#include<cstring>
#include<queue>
#include<map>

#define REP(i, n) for(int i = 0;i < n;i++)
#define REPR(i, n) for(int i = n;i >= 0;i--)
#define FOR(i, m, n) for(int i = m;i < n;i++)
#define FORR(i, m, n) for(int i = m;i >= n;i--)
#define SORT(v, n) sort(v, v+n);
#define VSORT(v) sort(v.begin(), v.end());
#define llong long long
#define pb(a) push_back(a)
using namespace std;
typedef pair<int, int> P;
typedef pair<llong, llong> LP;
typedef pair<int, P> PP;
typedef pair<llong, LP> LPP;
typedef long long int ll;

template<typename T>
vector<T> make_v(size_t a) { return vector<T>(a); }
template<typename T, typename... Ts>
auto make_v(size_t a, Ts... ts) {
	return vector<decltype(make_v<T>(ts...))>(a, make_v<T>(ts...));
}
template<typename T, typename V>
typename enable_if<is_class<T>::value == 0>::type
fill_v(T& t, const V& v) { t = v; }
template<typename T, typename V>
typename enable_if<is_class<T>::value != 0>::type
fill_v(T& t, const V& v) {
	for (auto& e : t) fill_v(e, v);
}


#define ARRAY_MAX 105
const int INF = 1e9 + 7;



int main() {

	int a, b, c;
	cin >> a >> b >> c;

	int ans = 7 * (c / (7 * a + b));
	//cout << a << " " << b << " " << c << endl;
	c -= (7 * a + b) * (c / (7 * a + b));
	
	//cout << c << endl;
	ans += (c) / a + c % a;

	cout << ans << endl;
}

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

int main() {
  int a, b, c;
  cin >> a >> b >> c;
  int week = a * 7 + b;
  int day = a;
  cout << min((c / week) * 7 + ((c % week + day - 1) / day), ((c + week - 1) / week) * 7) << endl;
  return 0;
}

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

int main() {
    int a, b, c; cin >> a >> b >> c;
    const int set = 7 * a + b,
          week = c / set,
          rest = c % set;
    double additional_days;
    if (rest > 7 * a)
        additional_days = 7;
    else {
        float tmp = (float)rest / a;
        // test begin -----
        //cout << "tmp: " << tmp << endl;
        // test end -----
        additional_days = ceil(tmp);
    }

    int result = 7 * week + additional_days;
    cout << result << endl;
    // test
    /*
       cout << "set: " << set << endl
       << "week: " << week << endl
       << "rest: " << rest << endl
       << "additional_days: " << additional_days << endl;
    */
}

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

typedef long long ll;
typedef pair<int, int> P;
#define MOD 1000000007
#define INF (1 << 30)
#define REP(i, m, n) for(int i = (int)m; i < (int)n; ++i)
#define rep(i, n) REP(i, 0, n)


signed main() {
    ios::sync_with_stdio(false);
    cin.tie(0);

    int a, b, c; cin >> a >> b >> c;
    int coins = 0;
    int ans = 0;
    while(true) {
        if(coins >= c) break;
        coins += a;
        ans++;
        if(ans%7 == 0) coins += b;
    }
    cout << ans << '\n';
    return 0;
}