主页
搜索
最近更新
数据统计
申请密钥
系统公告
1
/
1
请查看完所有公告
简单数学题(P6386)
最后更新于 2025-07-31 10:33:37
作者
sysong
分类
个人记录
复制 Markdown
查看原文
删除文章
更新内容
### 题目不难,就是有几个注意点 1. 取模时先减$1$再加$1$,是为了避免$0$的出现 2. ~~有个小坑~~,如果第一条狗暴躁但是第二条狗安静,那么答案为$one$而不是$both$ **下面上代码(注释都在里面)** ``` #include <bits/stdc++.h> #define R register #define gc() getchar() using namespace std; inline int rd(){ R int x=0;R char c=gc(); while(c>'9'||c<'0')c=gc(); while(c>='0'&&c<='9')x=(x<<1)+(x<<3)+(c^48),c=gc(); return x; } //快读函数(用不用无所谓) int main(){ R int a=rd(),b=rd(),c=rd(),d=rd(),k; R int s=a+b,t=c+d;//s是第一条狗暴躁-安静周期,t是第二条狗的周期 for(R int i=0;i<3;i++){//三个人到达时间 k=rd(); if((k-1)%s+1>a){//取模(dalao们都说是%你题) if((k-1)%t+1>c)printf("none\n");//两条狗都安静 else printf("one\n");//一安静二暴躁 } else{ if((k-1)%t+1>c)printf("one\n");//一暴躁二安静(那个“小坑”) else printf("both\n");//两条都暴躁 } } return 0; } ``` 觉得写的够清楚了吧
正在渲染内容...
点赞
0
收藏
0