srupのメモ帳

競プロで解いた問題や勉強したことを記録していくメモ帳

yukicoder No.395 永遠の17歳

問題

問題概要

省略

解法

X進数で表した時17となるXを求める。17の1が数字X分の大きさを持つので、X + 7 = nより X = n - 7を解答として出力すればいい。ただし、17ということは少なくとも8進数以上であることを意味する。X = 8のときn = 15より、nが15より小さい時は-1を出力すればいいことになる。

ミス

なし。

コード

#include <iostream>
#include <algorithm>
#include <cstdio>
using namespace std;

int main(void){
    int n; cin >> n;
    if(n <= 14){
        printf("-1\n");
        return 0;
    }else{
        printf("%d\n", n - 7);
        return 0;
    }
    return 0;
}