zoukankan      html  css  js  c++  java
  • 珠心算测验 C / C++

    代码如下

    #include<iostream>
    using namespace std;
    //注意数组长度
    int number[10001]; // 定义输入数组
    int book[10001];  //定义标记数组(桶)
    int num[10001];  // 定义判断输出数组
        
    int main()
    {
        int n;
        int maxn = -1;
        int ans = 0;
        
        cin >> n;
        for(int i = 1; i <= n; i++)
        {
            
            cin >> number[i];  //输入
            
            maxn = max(maxn,number[i]);  //求出最大输入数字,减少不必要的运行时间
            book[number[i]] = 1;      //标记,将输入的数在桶中标记
        }
        
        for(int i = 1; i <= maxn; i++)
            for(int j = i+1; j <= maxn; j++)
            {
                int k = i + j;      // 两者对应的下标和
                if(k <= 10000)      //注意长度
                    if(book[k] == book[i] * book[j] && book[k] != 0)  // 判断
                        num[k] = 1;      // 符合题目, 将数字在数组中赋值为 1 
            }    
            
            
        for(int i = 1; i <= maxn; i++)
            if(num[i] == 1)        // 找出数组中符合题意的数, 即数组中为 1 的数
                ans++;        // 求个数
            //    cout << i << " ";
            
                
        cout << ans << endl;    //输出个数
        return 0;
     }
  • 相关阅读:
    JavaMail
    Web的文件下载
    Web的文件上传
    Tcp 数据对象传输接口对象设计
    m个元素中选取n的组合
    PyQT Quick Start
    版本发布自动触发测试
    plantUML 实操
    Python 版本对比
    Some Python Tricks
  • 原文地址:https://www.cnblogs.com/go-alltheway/p/13538495.html
Copyright © 2011-2022 走看看