T1 做烧饼
题目描述
做好一只烧饼,需要把烧饼的两面都加热。给定两个正整数 n 与 k,n 表示需要做的烧饼数量,而 k 表示厨房里有 k 口锅,每口锅每分钟能做好一面烧饼。请计算至少需要多少分钟才能做完所有的烧饼。
输入格式
单独一行:两个正整数 n 与 k。
输出格式
单个正整数:表示需要多少分钟才能做好所有烧饼。
数据范围
1≤n≤10000
1≤k≤10000
样例数据
输入:
3 2
输出:
3
说明:
第一分钟加热第一只和第二只烧饼的正面
第二分钟加热第一只烧饼的反面和第三只烧饼的正面
第三分钟加热第二只烧饼的反面和第三只烧饼的反面

#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
int main()
{int n,k;cin>>n>>k;if(n*2<=k) cout<<2<<endl;else cout<<ceil(n*2.0/k)<<endl;return 0;
}

T2 正规数的判定
题目描述
如果一个正整数的所有素因子均不超过 5,则它被称为正规数(Regular Number)。例如 60 是一个正规数,因为 60=2^2*3*5,1000 也是一个正规数,因为 1000=2^3*5^3。前十五个正规数为:1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 15, 16, 18, 20, 24
给定一个正整数 n,请判定它是否是一个正规数。
输入格式
单个正整数:表示 n。
输出格式
如果 nn 是正规数,输出 Regular Number;
如果不是,输出 Irregular Number;
数据范围
对于30% 的数据,1≤n≤10^5;
对于60% 的数据,1≤n≤10^9;
对于100% 的数据,1≤n≤10^18。
样例数据
输入:
60
输出:
Regular Number
输入:
26
输出:
Irregular Number

#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
int main()
{long long n;cin>>n;while(n%2==0) n/=2;while(n%3==0) n/=3;while(n%5==0) n/=5;if(n==1) cout<<"Regular Number"<<endl;else cout<<"Irregular Number"<<endl;return 0;
}

T3 股票市场
题目描述
小爱知道一只股票在今后 n 天的价格。在第一天开始前,小爱有 m 元,那么在最后一天结束后,她最多能有多少钱呢?小爱每天都可以买入或卖出股票,注意股票在交易时的最小单位为 1 股。例如当有 13 元的时候,若股价为 4 元一股,则最多只能买 3 股。
输入格式
第一行:两个整数,表示 n 和 m;
第二行:n 个整数 a1,…,an,表示每天的股票价格。
输出格式
单个整数:表示能获得的最大钱数。
数据范围
1≤m≤100;
1≤ai≤20;
对于 30% 的数据,1≤n≤20;
对于 60% 的数据,1≤n≤5,000;
对于 100% 的数据,1≤n≤100,000;
保证输出答案不超过 10^18。
样例数据
输入:
3 10
1 2 3
输出:
30
说明:
第一天以1元的价格买进10股,到了最后一天以3元的价格卖出,10元变成了30元
输入:
4 100
40 20 10 5
输出:
100
说明:
没有买股票
输入:
6 100
1 2 10 1 5 10
输出:
10000

#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
int a[100005][2];
int main()
{int n,m,t=0;bool flag=true;scanf("%d %d %d",&n,&m,&a[1][0]);for(int i=2;i<=n;i++){scanf("%d",&a[i][0]);if(a[i][0]>a[i-1][0] && flag){flag=false;a[i-1][1]=1;t=m/a[i-1][0];m=m-(m/a[i-1][0])*a[i-1][0];}else if(a[i][0]<a[i-1][0]&& !flag){flag=true;m+=t*a[i-1][0];t=0;}}if(!flag) m+=t*a[n][0];cout<<m<<endl;return 0;
}

T4 最年长的人
题目描述
给定 n 个人的出生日期,请找出其中年龄最大的,并输出他的出生日期。
输入格式
第一行:单个正整数 n;
第二行到第n+1行:每行格式如下:
首先有一个四位数 y 表示年份;
接下来有一个两位数 m 表示月份;
最后有一个两位数 d 表示日期;
年、月、日之间以一个减号 - 隔开。
输出格式
输出年龄最大的人的出生日期,格式同输入。
数据范围
对于 50%的数据,1≤n≤1,000;
对于 100%的数据,1≤n≤1,000,000;
1900≤y≤2020;
保证月份和日期都是两位数且是合理的日期。
样例数据
输入:
4
2008-08-08
1953-06-15
1949-10-01
1926-08-18
输出:
1926-08-18

#include <iostream>
#include <cstdio>
#include <cmath>
#include <algorithm>
using namespace std;
struct St_old{int y,m,d;
}s[1000005];
bool mycmp(St_old a,St_old b){if(a.y==b.y){if(a.m==b.m) return a.d<b.d;else return a.m<b.m;}else return a.y<b.y;
}
int main()
{int n; scanf("%d",&n);for(int i=0;i<n;i++) scanf("%d-%d-%d",&s[i].y,&s[i].m,&s[i].d);sort(s,s+n,mycmp);printf("%04d-%02d-%02d",s[0].y,s[0].m,s[0].d);return 0;
}

T5 分数化小数
题目描述
给定一个以十进制表示的分数 a/b,保证 a<b,请将它化成一个二进制的小数。若存在循环节,用圆括号表示循环节。例如:
1/4=0.01
7/8=0.111
1/5=0.(0011)
输入格式
两个整数:表示 a 与 b。
输出格式
一串数字:表示 a/b 的二进制小数表示。
数据范围
对于 30% 的数据,1≤a<b≤30;
对于 60% 的数据,1≤a<b≤5,000;
对于 100% 的数据,1≤a<b≤2,000,000;
样例数据
输入:
1 4
输出:
0.01
输入:
7 8
输出:
0.111
输入:
1 5
输出:
0.(0011)

#include <iostream>
#include <cstdio>
#include <cmath>
#include <algorithm>
using namespace std;
int f[2000005][2];
int v[2000005];
int main()
{int a,b,t,i=1,j; scanf("%d %d",&a,&b);bool flag=true;while(a%b!=0&&flag){if(v[a]==1){flag=false;t=a;break;}f[i][1]=a;v[a]=1;f[i][0]=a*2.0/b;a*=2;a-=f[i][0]*b;i++;}printf("0.");if(!flag){for(j=1;f[j][1]!=t;j++)printf("%d",f[j][0]);printf("(");for(;j<i;j++)printf("%d",f[j][0]);printf(")");}else for(j=1;j<i;j++)printf("%d",f[j][0]);return 0;
}

上海市青少年算法2021年9月月赛(丙组)相关推荐

  1. 上海市青少年算法2021年7月月赛(丙组)

    T1 布置会场 题目描述 激动人心的 2021YACS线下赛 下个月就要举办了!为了欢迎各位OI选手,主办方决定用百合花和郁金香两种花朵布置场地. 负责比赛组织的小爱老师了解到,花店的销售方式如下: ...

  2. 上海市计算机学会2022年10月月赛丙组解题报告

    上海市计算机学会2022年10月月赛丙组解题报告 直角三角形的判定 题目描述 给定三个正整数表示三角形的三条边,请判定它是否为直角三角形 输入格式 第一行:三个整数 a,b 与 c 输出格式 若可以构 ...

  3. 上海市计算机学会月赛 2022年9月月赛丙组

    上海市计算机学会月赛 2022年9月月赛丙组 这次题目真的衡水 矩形的周长与面积 机会成本 三色排序 阶乘尾数 前序中序转后序 这次题目真的衡水 文章拖了好久忘记发了 明天初赛祝各位考试顺利有一个好的 ...

  4. 上海市计算机学会月赛 2022年7月月赛丙组

    上海市计算机学会月赛 2022年7月月赛丙组 水仙花指数 因数之和 观光电梯 匹配括号(三) 打印六芒星 本文仅供学术探讨 水仙花指数 内存限制: 256 Mb时间限制: 1000 ms 题目描述 定 ...

  5. 上海2022年11月月赛丙组

    上海2022年11月月赛丙组 T1~T4略 T5 出栈序列 题目描述 给定一个长度为 n n n的.仅由小写字母组成的字符串,将其按序依次放入栈中. 请问在所有可能的出栈序列中,字典序最小的出栈序列是 ...

  6. 上海市计算机学会竞赛平台.2023年1月月赛丙组

    T1 实验日志 题目描述 小爱正在完成一个物理实验,为期n天,其中第i天,小爱会记录 a i a_i ai​ 条实验数据在实验日志中. 已知小爱的实验日志每一页最多纪录m条数据,每天做完实验后他都会将 ...

  7. 上海2022年10月月赛丙组 T5:组队竞赛

    原题连接:上海市计算机学会竞赛平台 | YACS 一,70分的写法 先对能力值进行从小到大排序,在对热情度进行前缀和处理,再枚举区间中的开始与结束位置判断是否满足能力值最大选手的能力差值小于等于X的条 ...

  8. 上海计算机协会-10月月赛-丙组-T5-组队竞赛

    组队竞赛 内存限制: 256 Mb时间限制: 1000 ms 题目描述 有nn同学想要参加小爱组建的一支信息学竞赛队伍,每位同学有能力值a_iai​与热情度b_ibi​. 小爱认为,如果队伍当中,能力 ...

  9. 上海市青少年算法月赛丙组—目录汇总

    上海市青少年算法2023年6月月赛(丙组) T1 差分求和 T2 二进制异或 T3 颜文字 T4 选取子段(二) T5 观光单车 ​​​​​​​上海市青少年算法2023年5月月赛(丙组) T1 三角形 ...

最新文章

  1. 在工作中有被动转主动的体会_积极主动应对眼前的一切,就是对自己最好的犒赏...
  2. Python入门100题 | 第042题
  3. Outlook2013修改数据文件默认存放目录
  4. html有序列表和无序列表互相嵌套,关于列表的嵌套,下列说法正确的是( )。 答案:无序列表和有序列表可以相互嵌套与 之间相当于一个容器,可以嵌套无序列表、有序列表等网页元素...
  5. IoC(控制反转)的主要组件和注入的两种方式
  6. CSS3 transform对fixed元素造成的影响笔记
  7. [OpenStack] OpenStack Essex - Glance api 的实验(curl)
  8. 【SpringBoot_ANNOTATIONS】生命周期 04 BeanPostProcessor 后置处理器
  9. 迅捷pdf转换器(文件格式转换器)
  10. 高级测试开发工程师简历模板
  11. C#保存图片、压缩图片大小、缩放图片比例
  12. 手写demo了解vue响应式原理,订阅模式,观察者模式
  13. 向量空间、内积空间、欧式空间以及希尔伯特空间的关系
  14. idea调用自己的方法(introduce local variable)
  15. 2022小米运维开发笔试1
  16. react学习经验总结(react安装)
  17. MyBatis入门配置(2022.7.16)
  18. 大学生为什么要学Linux?Linux有什么优点?
  19. 吴国忠先生谈郑曼青太极拳之思路
  20. Eclipse安装InUbuntu18和简单使用

热门文章

  1. python开发app-如何用python写一个安卓APP?(上)
  2. 产品经理,该如何做好「自己」这款产品?
  3. 什么是下一代防火墙NGFW(Next Generation Firewall)?
  4. 软考真题答案-2021年11月系统集成项目管理工程师上午题(二)
  5. 发布苹果App有哪些步骤流程
  6. 开发者工具 箱 编程工具 dns加速器 LingMax https抓包改包劫持
  7. Intellij Idea Database schemas显示
  8. 《麦肯锡教给我的写作武器》摘录
  9. 安卓版旅行青蛙三叶草修改教程
  10. 2022爱分析・工业互联网实践报告