#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long ll; const double EPS = 1e-9; typedef vector vint; typedef vector> v2int; typedef vector>> v3int; typedef vector vll; typedef vector> v2ll; typedef vector>> v3ll; typedef list liint; typedef pair pint; typedef vector> vpint; typedef vector> vpll; typedef vector> vpll_int; typedef vector> vpint_ll; typedef set> spint; typedef set> spll; typedef unordered_map> Graph; const int INF = int(2e9); const ll LINF = ll(2e9) * ll(2e9); #define rep(i, n) REP(i, 0, n) #define ALL(v) v.begin(), v.end() #define MSG(a) cout << #a << " " << a << endl; #define REP(i, x, n) for(int i = x; i < n; i++) template void chmax(T& a, C b) { a > b ? : a = b; } template void chmin(T& a, C b) { a < b ? : a = b; } int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); string N; cin >> N; rep(i, 100) { ll x = 0; rep(i, N.size()) { x += (N[i] - 0x30); } N = to_string(x); if (N.size() == 1) break; } cout << N << endl; return 0; }