ZZULIOJ 1050~1059

  • ZZULIOJ 1050: 阶乘的累加和
    • 题目描述
    • 输入
    • 输出
    • 代码
  • ZZULIOJ 1051: 平方根的和
    • 题目描述
    • 输入
    • 输出
    • 代码
  • ZZULIOJ 1052: 数列求和4
    • 题目描述
    • 输入
    • 输出
    • 代码
  • ZZULIOJ 1053: 正弦函数
    • 题目描述
    • 输入
    • 输出
    • 代码
  • ZZULIOJ 1054: 猴子吃桃
    • 题目描述
    • 输入
    • 输出
    • 代码
  • ZZULIOJ 1055: 兔子繁殖问题
    • 题目描述
    • 输入
    • 输出
  • ZZULIOJ 1056: 幸运数字
    • 题目描述
    • 输入
    • 输出
    • 代码
  • ZZULIOJ 1057: 素数判定
    • 题目描述
    • 输入
    • 输出
    • 代码
  • ZZULIOJ 1058: 求解不等式
    • 题目描述
    • 输入
    • 输出
    • 代码
  • ZZULIOJ 1059: 最高分
    • 题目描述
    • 输入
    • 输出
    • 代码

ZZULIOJ 1050: 阶乘的累加和

时间限制: 1 Sec 内存限制: 30 MB

题目描述

求1! + 2! + ……n!

输入

输入一个整数n,你可以假定n不大于10。

输出

输出一个整数,即阶乘累加的结果,单独占一行。
样例输入 Copy
4
样例输出 Copy
33

代码

#include<stdio.h>
int Factorial(int n)
{int num = 1;while(n){num = num * n;n--;}return num;
}
int main()
{int n;scanf("%d", &n);int sum = 0;for(int i = 1; i <= n; i++){sum += Factorial(i);}printf("%d\n", sum);return 0;
}

ZZULIOJ 1051: 平方根的和

时间限制: 1 Sec 内存限制: 30 MB

题目描述

数列的定义如下:
数列的第一项为item,以后各项为前一项的平方根,求数列的前n项的和。

输入

由两个整数item(item<10000)和n(n<1000)组成,item和n的含义如前所述。

输出

输出该数列的和,占一行,要求精度保留2位小数。
样例输入 Copy
84 4
样例输出 Copy
97.93

代码

#include<stdio.h>
#include<math.h>
int main()
{int item, n;scanf("%d %d", &item, &n);double sum = 0;double t = item;for(int i = 1; i <= n; i++){sum += t; t = sqrt(t);}printf("%.2lf\n", sum);return 0;
}

ZZULIOJ 1052: 数列求和4

时间限制: 1 Sec 内存限制: 30 MB

题目描述

输入n和a,求a+aa+aaa+…aa…a(n个a),如当n=3,a=2时,2+22+222的结果为246

输入

包含两个整数,n和a,含义如上述,你可以假定n和a都是小于10的非负整数

输出

输出前n项和,单独占一行
样例输入 Copy
3 2
样例输出 Copy
246

代码

#include<stdio.h>
int main()
{int n, a;int sum = 0;int t = 1;scanf("%d %d", &n, &a);for(int i = 1; i <= n; i++){sum += t * a;t = t * 10 + 1;}printf("%d\n", sum);return 0;
}

ZZULIOJ 1053: 正弦函数

时间限制: 1 Sec 内存限制: 128 MB

题目描述

输入x,计算上面公式的前10项和。

输入

输入一个实数x。

输出

输出一个实数,即数列的前10项和,结果保留3位小数。
样例输入 Copy
1
样例输出 Copy
0.841

代码

#include<stdio.h>
int main()
{double x, temp1, temp2;double sinx = 0;int t = 1;//变号 scanf("%lf", &x);temp1 = x; //分子 temp2 = 1;//分母 for(int i = 1; i <= 10; i++){sinx += t * temp1 / temp2; t = -t;temp1 = temp1 * x * x;temp2 = temp2 * 2 * i * (2 * i + 1);}printf("%.3lf\n", sinx);return 0;
}

ZZULIOJ 1054: 猴子吃桃

时间限制: 1 Sec 内存限制: 128 MB

题目描述

悟空第一天摘下桃子若干,当即吃掉一半,还不过瘾,又多吃一个,第二天又将剩下的桃子吃掉一半多一个,以后每天吃掉前一天剩下的一半多一个,到第n天准备吃的时候只剩下一个桃子。聪明的你,请帮悟空算一下,他第一天开始吃的时候桃子一共有多少个呢?

输入

输入一个数n(1<=n<=30)。

输出

输出第一天的桃子个数。
样例输入 Copy
3
样例输出 Copy
10

代码

#include<stdio.h>
int main()
{int n;int sum = 1;scanf("%d", &n);for(int i = 1; i < n; i++){sum = sum + 1;sum = 2 * sum;} printf("%d\n", sum);return 0;
}

ZZULIOJ 1055: 兔子繁殖问题

时间限制: 1 Sec 内存限制: 128 MB

题目描述

这是一个有趣的古典数学问题,著名意大利数学家Fibonacci曾提出一个问题:有一对小兔子,从出生后第3个月起每个月都生一对兔子。小兔子长到第3个月后每个月又生一对兔子。按此规律,假设没有兔子死亡,第一个月有一对刚出生的小兔子,问第n个月有多少对兔子?

输入

输入月数n(1<=n<=44)。

输出

输出第n个月有多少对兔子。
样例输入 Copy
3
样例输出 Copy
2

/*本题是一个经典的递推入门题目:
用f(n)表示第n个月的兔子数目,则:
f(n) = f(n-1) + 本月新生兔子数 而,
本月新生兔子数 = f(n-2) (因为上上个月已存在的每只兔子,
本月都会新生一只兔子) 所以,f(n) = f(n-1) + f(n-2)
这就是著名的fabinacci数列,
后一项等于前两项的和: 1 1 2 3 5 8..... *///方法一、用循环的方法来做
#include<stdio.h>
int main()
{int n, t;scanf("%d", &n);int rabbit1 = 1;//第1个月兔子数 int rabbit2 = 1;//第2个月兔子数 for(int i = 3; i <= n; i++){t = rabbit2;rabbit2 = rabbit1 + rabbit2;rabbit1 = t;}printf("%d\n", rabbit2);return 0;
} //方法2、用递归的方法来做
//大家可以用递归的代码,但是会显示时间超时
//分别用方法一和方法二输入 44 看看运行的时间
//由此可猜测 用递归的算法比一般的执行时间更长
#include<stdio.h>
int Fabinacci(int n)
{if(n <= 2)return 1;elsereturn Fabinacci(n-1) + Fabinacci(n-2);
}
int main()
{int rabbit, n;scanf("%d", &n);rabbit = Fabinacci(n);printf("%d\n", rabbit);return 0;
}

ZZULIOJ 1056: 幸运数字

时间限制: 1 Sec 内存限制: 128 MB

题目描述

小明对某些数字有偏爱,例如,他喜欢7的倍数,而不喜欢4的倍数,如果一个整数是7的倍数,而不是4的倍数,小明会认为这个数字是他的幸运数字。现在给定两个整数m和n,请你帮小明找m到n范围内的最大的幸运数字。如果m到n范围内没有幸运数字,则输出“no”

输入

两个正整数m和n(m < =n,且均小于10的9次方)

输出

一个整数,即m到n范围内的最大的幸运数字。
样例输入 Copy
90 100
样例输出 Copy
98

代码

#include<stdio.h>
int main()
{int m, n;int max = 0;//因为m和n都是正整数//可以用 max == 0 判断是否有幸运数字 scanf("%d %d", &m, &n);for(int i = m; i <= n; i++){if(i % 7 == 0 && i % 4 != 0)max = i; }if(max == 0)printf("no\n");elseprintf("%d\n", max);
}

ZZULIOJ 1057: 素数判定

时间限制: 1 Sec 内存限制: 30 MB

题目描述

输入一个正整数n,判断n是否是素数,若n是素数,输出”Yes”,否则输出”No”。

输入

输入一个正整数n(n<=1000)

输出

如果n是素数输出"Yes",否则输出"No"。输出占一行。
样例输入 Copy
2
样例输出 Copy
Yes

代码

#include<stdio.h>int main()
{int n,i;scanf("%d", &n);for(i = 2; i <= n / 2; i++){if(n % i == 0)break;}if(i <= n / 2 || n == 1) printf("No\n");elseprintf("Yes\n");return 0;
}

ZZULIOJ 1058: 求解不等式

时间限制: 1 Sec 内存限制: 128 MB

题目描述

已知不等式 1!+2!+3!+…+m!‹n,请编程对用户指定的n值计算并输出满足该不等式的m的整数解。

输入

输入一个整数n,n为int范围内的正整型。

输出

输出m的取值范围,具体格式见输出样例。
样例输入 Copy
2000000000
样例输出 Copy
m<=12
提示
注意计算过程中的类型溢出问题

代码

// 输入的 n 虽然是int范围内的正整型
// 但是设置的两个函数返回值可能会超过int型
// 例如: 假设 x_int型是小于5的 输入 n = 4
// 则 1! + 2! = 3 < n  需要进行下一个循环
// 而 1! + 2! + 3! = 9 > 5
// 又           3! = 6 > 5
//   所以两个函数都设置成long long #include<stdio.h>long long Factorial(int n)
{long long num = 1;while(n){num = num * n;n--;}return num;
}long long Add_factorial(int n)
{long long sum = 0;for(int i = 1; i <= n; i++){sum = sum + Factorial(i);}return sum;
} int main()
{int n, i;scanf("%d", &n);for(i = 1; ; i++){if(Add_factorial(i) >= n)break;}printf("m<=%d\n", i - 1);return 0;
}

ZZULIOJ 1059: 最高分

时间限制: 1 Sec 内存限制: 30 MB

题目描述

输入一批学生的成绩(整数),输出最高分。

输入

输入包含多个非负整数和一个负整数。该负数不作为有效成绩,只表示输入结束。

输出

输出一个整数,即最高分。单独占一行。
样例输入 Copy
7 6 5 9 2 -1
样例输出 Copy
9

代码

#include<stdio.h>int main()
{int a[10000], n, max;int i = 0;while(1){scanf("%d", &a[i]);if(a[i] < 0)break;i++;}n = i;max = a[0];for(i = 1; i <= n; i++){if(max < a[i])max = a[i];}printf("%d\n", max);return 0;
}

ZZULIOJ 1050~1059(oj入门题)相关推荐

  1. ZZULIOJ 1000~1009(oj入门题)

    ZZULIOJ 1000~1009 ZZNULIOJ 1000: 整数a+b 题目描述 输入 输出 代码: ZZULIOJ 1001: 植树问题 题目描述 输入 输出 代码: ZZULIOJ 1002 ...

  2. ZZULIOJ 1020~1029(oj入门题)

    ZZULIOj 1020~1029 ZZULIOJ 1020: 两整数排序 题目描述 输入 输出 代码: ZZULIOJ 1021: 三个整数的最大值 题目描述 输入 输出 代码: ZZULIOJ 1 ...

  3. 南阳oj入门题-A+B Problem

    /** A+B Problem 时间限制:3000 ms | 内存限制:65535 KB 难度:0 描述 此题为练手用题,请大家计算一下a+b的值 输入 输入两个数,a,b 输出 输出a+b的值 样例 ...

  4. 南阳oj入门题-蛇形填数

    /** 蛇形填数 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述 在n*n方陈里填入1,2,...,n*n,要求填成蛇形.例如n=4时方陈为: 10 11 12 1 9 16 ...

  5. 南阳oj入门题-数数

    /** 数数 时间限制:3000 ms | 内存限制:65535 KB 难度:2 描述 我们平时数数都是喜欢从左向右数的,但是我们的小白同学最近听说德国人数数和我们有些不同,他们正好和我们相反,是从右 ...

  6. 南阳oj入门题-公约数和公倍数

    /** 水仙花数 时间限制:1000 ms | 内存限制:65535 KB 难度:0 描述 请判断一个数是不是水仙花数. 其中水仙花数定义各个位数立方和等于它本身的三位数. 输入 有多组测试数据,每组 ...

  7. 【新手上路】语法入门算法入门题单

    作者:王清楚 链接:[新手上路]语法入门&算法入门题单_ACM竞赛_ACM/CSP/ICPC/CCPC/比赛经验/题解/资讯_牛客竞赛OJ_牛客网 来源:牛客网 介绍:本题单分为语法入门和算法 ...

  8. 各大OJ刷题平台汇总

    前言 想成为一名高级工程师,算法还是要有的,至少在入门编程和进入公司之前都是必备的.刷题也可以很好的锻炼动手能力和逻辑思维,今天就给大家介绍一些知名的在线刷题平台,都是干货哦! 力扣(leetcode ...

  9. 狂刷OJ基础题两天,OJ机考成功半小时全部AC了

    一.背景 我们学校有个程序设计实践(C\C++版),成绩就是平时给了54题刷够50+就平时分满分,期末考试就是上机考试八题(大概分为数论.简单计算.时间显示.进制转换.字符串.递归.枚举几大类型),只 ...

  10. 【刷题汇总】 CSP/NOIP真题分析 基础OJ刷题包

    1.NOIP与CSP-J/S的历年真题分析汇总 序号 标题 内容 属性 1 CSP-J2-2021 解题报告 J组真题讲解 题解包 2 CSP-J2-2020 解题报告 J组真题讲解 题解包 3 CS ...

最新文章

  1. sql join on 多表连接_SQL 多表查询-交叉连接(笛卡尔积)
  2. 【数字信号处理】相关函数 ( 相关系数与相关函数 | 相关函数定义 )
  3. 每日一博 - Review线程池_02
  4. Problem B: 故障电灯(light)
  5. java B2B2C Springboot电子商城系统
  6. Codeforces Round #381 (Div. 1) A. Alyona and mex 构造
  7. sqlserver 触发器 update_运维日记| SQL server 那点事——DML触发器
  8. Windows 10部署与管理指南(1)之环境准备篇
  9. java单词200个,请收藏!贼有用
  10. IDL简单读写nc文件
  11. 《统计会犯错——如何避免数据分析中的统计陷阱》一导读
  12. 院校-国外-美国:斯坦福大学( Stanford)
  13. anaconda怎么切换目录_Anaconda更改工作路径
  14. 文件、图片上传,下载预览的实现
  15. VR火灾隐患排查,模拟多种火灾场景
  16. 【Linux】linux 终端报Message from syslogd
  17. c语言程序2000行代码,C语言教务管理系统2000行代码
  18. 《Python+Kivy(App开发)从入门到实践》自学笔记:简单UX部件——ToggleButton切换按钮
  19. 面试经历|为即将找工作的你保驾护航
  20. 自定义ironic-python-agent镜像 ipa ramdisk and kernel

热门文章

  1. php 字符串长度的解释
  2. 基于SSM的宠物领养网站
  3. 无感支付及相应技术规范
  4. 公司与公司保密协议范本
  5. 系统辨识matlab程序,系统辨识部分算法matlab程序
  6. Tarjan算法——求强连通分量
  7. matlab随机信号实验报告,随机信号分析实验报告(基于MATLAB语言)
  8. Spring Cloud 常用注解
  9. 局域网桌面共享会议该如何实现屏幕共享?
  10. 【新增esp8266设备订阅命令主题、响应平台命令、命令处理】esp8266接入华为云物联网平台(IOTDA)2.0