zoukankan      html  css  js  c++  java
  • C语言编程练习25:sqrt log sin 函数

    题目描述

    小明的老师给小明布置了这样一道作业题,一个序列符合以下定义:

    现问你这个序列的第n项是多少?

    输入

    输入包含多组测试数据。每组输入一个整数n(0<=n<=1000000),当输入-1时,输入结束。

    输出

    对于每组输入,输出第n项的值,结果请mod 1000000。

    样例输入 Copy

    0
    -1


    思路:题目已经给思路了,简单的递归而已,但是用函数递归我运行错误,也不是超时,不解。
       也做过好多题了,总算是在这道题上回忆起了可以先把结果全部算出来存数组里面,直接根据n的值找数组下标,然后输出相应的值。
    #include <stdio.h>
    #include <iostream>
    #include <cstring>
    #include <algorithm>
    #include <cmath>
    
    
    int main()
    {
    	int n;
    	int f[1000005];
    	f[0] = 1;
    	for(int i=1;i<1000005;i++)
    	{
    		f[i]=(f[int(i-sqrt(i))]+f[int(log(i))]+f[int(i*sin(i)*sin(i))])%1000000;
    	}
    	while(1)
    	{
    		scanf("%d",&n);
    		if(n==-1)
    		{
    			break;
    		}
    		printf("%d
    ",f[n]);
    
    	}
        return 0;
    }
    
  • 相关阅读:
    CentOS7安装node环境
    【异常】update更新java.sql.SQLException: Duplicate entry '2019-07-30 00:00:00-110100' for key
    MySQL查询多行重复数据SQL
    Phoenix批量提交优化,官网的demo
    (转) 读懂IL
    Docker
    Docker
    Rest之路
    (转)Docker
    Docker
  • 原文地址:https://www.cnblogs.com/FantasticDoubleFish/p/14320288.html
Copyright © 2011-2022 走看看