zoukankan      html  css  js  c++  java
  • lightoj 1014

    判断到根号n即可,另外使用dfs输出,不需要另开数组再排序。

    
    #include<cmath>
    #include<cstdio>
    int P, L, len, cnt;
    void dfs(int dep){
        if(dep > len) return;
        if(dep > L){
            if(P % dep == 0){
                if(cnt == 1) printf("%d", dep), cnt = 2;
                else printf(" %d", dep);
                dfs(dep+1);
                if(P/dep != dep && P/dep > L) {
                    if(cnt == 1) printf(" %d", P/dep), cnt = 2;
                    else printf(" %d", P/dep);
                }
            }else dfs(dep+1);
        }else {
            dfs(dep+1);
            if(P % dep == 0 && P/dep > L) {
                if(cnt == 1) printf("%d", P/dep), cnt = 2;
                else printf(" %d", P/dep);
            }
        }
    }
    int main(){
        int t, CASE(0);
        scanf("%d", &t);
        while(t--){
            scanf("%d%d", &P, &L);
            if(L >= P - L) printf("Case %d: impossible ", ++CASE);
            else {
                P -= L;
                len = sqrt(P);
                printf("Case %d: ", ++CASE);
                cnt = 1;
                dfs(1);
                printf(" ");
            }
        }

  • 相关阅读:
    软件项目“免坑”指南
    软件项目质量保证——编码规范
    从Web借鉴UI设计
    C#学习笔记——面向对象、面向组件以及类型基础
    关系数据库设计
    Winform开发框架之插件化应用框架实现
    桌面程序界面设计分享
    2-Bom
    1-简介
    测试
  • 原文地址:https://www.cnblogs.com/anhuizhiye/p/3933166.html
Copyright © 2011-2022 走看看