笨蛋花的小窝qwq

笨蛋花的小窝qwq

“我要再和生活死磕几年。要么我就毁灭,要么我就注定铸就辉煌。如果有一天,你发现我在平庸面前低了头,请向我开炮。”

题解 CF1202D 【Print a 1337-string...】

posted on 2019-08-09 23:10:36 | under 题解 |

智商题。

其实大家都想到了13..37的形式,但是我当时就一心想着要质因数分解分解成$\frac{k(k-1)}{2}$的形式……

所以其实我们把剩下的7放到开头的133后面就好了,即13377..73333..37

#include <cmath>
#include <cstdio>
#include <iostream>

using namespace std ;
int N, T, L1, L2 ;

int main(){
    cin >> T ;
    while (T --){
        cin >> N ; int p = sqrt(2*N);
        for (int i = p ; i <= 2*N ; ++ i){
            if (i * (i - 1) > 2 * N) break ;
            L1 = i * (i - 1) / 2, L2 = N - L1, L1 = i ;
        }
        printf("133") ;
        for (int i = 1 ; i <= L2 ; ++ i) putchar('7') ;
        for (int i = 1 ; i <= L1 - 2 ; ++ i) putchar('3') ;
        printf("7\n") ;
    }
}