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;
     }
  • 相关阅读:
    day01-h1字体大小和文本居中
    js正则表达式中的
    js滚动分页原理
    在web.xml中设置全局编码
    C# 导出word 表格代码
    C# 创建单例
    Winform 异步调用2 时间
    Winform 异步调用
    c#中跨线程调用windows窗体控件
    C# 中的委托和事件
  • 原文地址:https://www.cnblogs.com/go-alltheway/p/13538495.html
Copyright © 2011-2022 走看看