CodeForces 110C 【构造】
思路:
7越多越好,然后从7最多个数枚举过去,判断一下剩下的能不能用4解决就好了;
#include <bits/stdc++.h> using namespace std; typedef long long LL; int main() { int m,n; scanf("%d",&n); int q=n/7; for(int i=q;i>=0;i--) { m=i*7; int x=n-m; if(x%4==0) { x/=4; for(int k=0;k<x;k++) printf("%d",4); for(int k=0;k<i;k++) printf("%d",7); return 0; } } puts("-1"); return 0; }