# include using namespace std; # define rep(i,a,n) for (int i=a; i<=n; ++i) # define per(i,a,n) for (int i=a; i>=n; --i) # define bug puts("H"); # define pb push_back # define mp make_pair # define all(x) (x).begin(), (x).end() # define fi first # define se second # define lch p<<1,l,mid # define rch p<<1|1,mid+1,r # define mem(a,b) memset(a,b,sizeof(a)) # define INF 1000000001 # define MOD 998244353 typedef vector Vi; typedef long long i64; typedef long long ll; typedef pair Pi; //i64 powmod(i64 a, i64 b, i64 mod){i64 res=1;a%=mod;assert(b>=0);for(;b;b>>=1){if(b&1)res=res*a%mod;a=a*a%mod;}return res;} //i64 Inv(i64 b){return powmod(b,(i64)MOD-2);} inline int Scan() { int x=0; char ch=getchar(); while(ch<'0'||ch>'9') ch=getchar(); while(ch>='0'&&ch<='9'){x=x*10+ch-'0'; ch=getchar();} return x; } const int N = 105; //const int M = 524288; const double eps = 1e-9; int check(int x) { if (x >= 95) return 43; else if (x >= 90) return 40; else if (x >= 85) return 37; else if (x >= 80) return 33; else if (x >= 75) return 30; else if (x >= 70) return 27; else if (x >= 67) return 23; else if (x >= 65) return 20; else if (x >= 62) return 17; else if (x >= 60) return 10; else return 0; } int dp[405]; int main () { int T; scanf("%d", &T); mem(dp,-1); dp[0] = 0; rep(i,1,4) per(j,400,0) rep(k,0,min(j,100)) { if (dp[j-k] == -1) continue; dp[j] = max(dp[j], dp[j-k]+check(k)); } while (T--) { int x; scanf("%d", &x); printf("%d.%d\n", dp[x]/10,dp[x]%10); } return 0; }