zoukankan      html  css  js  c++  java
  • 循环结构程序设计(算法竞赛入门经典)课后题

      1 #include<iostream>
      2 #include<iomanip>
      3 #include<cmath>
      4 #include<vector>
      5 #include<time.h>
      6 #include<fstream>
      7 using namespace std;
      8 //1、水仙花数
      9 //int main()
     10 //{
     11 //    for (int i = 100; i <= 999; i++)
     12 //    {
     13 //        int a = 0, b = 0, c = 0;
     14 //        int sum = i;
     15 //        a = sum % 10;
     16 //        sum = sum / 10;
     17 //        b = sum % 10;
     18 //        sum = sum / 10;
     19 //        c = sum % 10;
     20 //        if (i == a*a*a + b*b*b + c*c*c)
     21 //        {
     22 //            cout << i << endl;
     23 //        }
     24 //    }
     25 //    printf("Time used = %.2f
    ", (double)clock() / CLOCKS_PER_SEC);
     26 //    system("pause");
     27 //    return 0;
     28 //}
     29 //2、韩信点兵
     30 //int main()
     31 //{
     32 //    
     33 //    int a = 0, b = 0,c = 0;
     34 //    while (cin >> a >> b >> c)
     35 //    {
     36 //        int min = 102;
     37 //        for (int i = 10; i <= 100; i++)
     38 //        {
     39 //            if (i % 3 == a && i % 5 == b && i % 7 == c)
     40 //            {
     41 //                if (i < min)
     42 //                    min = i;
     43 //            }
     44 //        }
     45 //        if (min == 102)
     46 //        {
     47 //            cout << "no answer" << endl;
     48 //        }
     49 //        else
     50 //        {
     51 //            cout << min << endl;
     52 //        }
     53 //    }
     54 //    
     55 //    
     56 //    printf("Time used = %.2f
    ", (double)clock() / CLOCKS_PER_SEC);
     57 //    system("pause");
     58 //    return 0;
     59 //}
     60 //3、倒三角形
     61 //int main()
     62 //{
     63 //    int n;
     64 //    while (cin >> n)
     65 //    {
     66 //        for (int i = n; i >= 1; i--)
     67 //        {
     68 //            for (int x = i; x < n; x++)
     69 //                cout << " ";
     70 //            for (int j = 1; j <= 2 * i - 1; j++)
     71 //                cout << "#";
     72 //            for (int x = i; x < n; x++)
     73 //                cout << " ";
     74 //            cout << endl;
     75 //        }
     76 //    }
     77 //    return 0;
     78 //}
     79 //4、子序列的和
     80 //int main()
     81 //{
     82 //    int n, m;
     83 //    int case1 = 0;
     84 //    while (cin >> n >> m&&n != 0 && m != 0)
     85 //    {
     86 //        case1++;
     87 //        float sum = 0.0;
     88 //        if (n <= m)
     89 //        {
     90 //            for (int i = n; i <= m; i++)
     91 //                sum += (1.0 /i)*(1.0/i);
     92 //                //sum += 1.0 /(i*i);
     93 //        }
     94 //        cout  <<setprecision(20)<< fixed << "case" << case1 << ":" << sum << endl;
     95 //    }
     96 //    
     97 //    return 0;
     98 //}
     99 //5、分数化小数(decimal)
    100 //int main()
    101 //{
    102 //    int a, b, c;
    103 //    while (cin >> a >> b >> c&&a != 0 && b != 0 && c != 0)
    104 //    {
    105 //        cout << setprecision(c) << (double)a / b << endl;
    106 //    }
    107 //    return 0;
    108 //}
    109 //6、排列
    110 void result(int num, int &result_add, int &result_mul)
    111 {
    112     int i, j, k;
    113 
    114     i = num / 100;        //百位
    115     j = num / 10 % 10;    //十位
    116     k = num % 10;         //个位
    117 
    118     result_add += i + j + k;    //分解出来的位数相加
    119     result_mul *= i * j * k;    //相乘
    120 }
    121 
    122 
    123 int main()
    124 {
    125     int i, j, k;
    126     int result_add, result_mul;
    127 
    128     for (i = 123; i <= 329; i++)
    129     {
    130         j = i * 2;
    131         k = i * 3;
    132 
    133         result_add = 0;
    134         result_mul = 1;
    135 
    136 
    137 
    138         result(i, result_add, result_mul);
    139         result(j, result_add, result_mul);
    140         result(k, result_add, result_mul);
    141 
    142         if (result_add == 45 && result_mul == 362880)
    143             printf("%d %d %d
    ", i, j, k);
    144     }
    145     system("pause");
    146     return 0;
    147 }
  • 相关阅读:
    负环操作 的队列
    The Prices(有依赖性的状压dp)(去不同商店买东西先花不同路费)
    BFS
    滚动数组(细节)(坑点)
    P1908 逆序对(细节)(树状数组解法)
    head
    DaoVoice JS 代码接入示例
    DaoVoice JS 代码接入示例
    DaoVoice JS 代码接入示例
    DaoVoice JS 代码接入示例
  • 原文地址:https://www.cnblogs.com/wujufengyun/p/6893187.html
Copyright © 2011-2022 走看看