摘要: 整数除以2进行四舍五入的操作可以通过判断它是否是奇数来解决,以避免浮点数的介入。 int n; int main() { char c; cin>>n>>c; int m; if(n & 1) m=n/2+1; else m=n/2; for(int i=0;i<m;i++) { if(!i || 阅读全文
posted @ 2021-01-27 23:41 Dazzling! 阅读(40) 评论(0) 推荐(0) 编辑
摘要: 用vis数组判断没有对应类型的数字,不能用a[i]的值为0判断,因为0的值模5也为0. int a[10]; bool vis[10]; int cnt; int n; int main() { while(cin>>n) { memset(a,0,sizeof a); memset(vis,0,s 阅读全文
posted @ 2021-01-27 20:14 Dazzling! 阅读(58) 评论(0) 推荐(0) 编辑
摘要: 环形前缀和。 dist[i]存储第i个结点到第i+1个结点的距离,sum[i]为前缀和数组,每次取两种走法(顺时针、 逆时针)当中距离的较小值即可。 const int N=1e5+10; int dist[N]; int sum[N]; int n,m; int main() { cin>>n; 阅读全文
posted @ 2021-01-27 18:33 Dazzling! 阅读(42) 评论(0) 推荐(0) 编辑
摘要: 手动实现stoi()方法。 int toInt(string s) { int res=0; for(int i=0;i<s.size();i++) if(isdigit(s[i])) res=res*10+(s[i]-'0'); if(s[0] == '-') res=-res; return r 阅读全文
posted @ 2021-01-27 17:40 Dazzling! 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 用数组sum保存每个学校的编号对应的总分,在输入时将每一个分数score累加到学校编号id对应的sum[id]中,然后遍历整个数组找将总分最高的学校编号。 const int N=1e5+10; int sum[N]; int n; int main() { cin>>n; for(int i=0; 阅读全文
posted @ 2021-01-27 16:29 Dazzling! 阅读(27) 评论(0) 推荐(0) 编辑
摘要: 模拟 模拟题是一类“题目怎么说,你就怎么做”的题目,如果实现起来不太麻烦,就可以称之为“简单模拟”。这类题目不涉及算法,完全只是根据题目描述来进行代码的编写,所以考查的是代码能力。 查找 有时考生会碰到这样一种情况: 给定一些元素, 然后查找某个满足某条件的元素。这就是查找操作需要做的事情。 日期处 阅读全文
posted @ 2021-01-27 16:15 Dazzling! 阅读(57) 评论(0) 推荐(0) 编辑