每日错题
王加乐可爱捏我大哥绝绝子
到远方去!熟悉的地方没有风景
展开
-
【小记录】判断日期
判断日期合法性int months[] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};bool check(int y, int m, int d) //判断是否是合法日期{ if (d <= 0 || m <= 0 || m >= 13) return false; if (m - 2) //判断是否为2月 { if (d > months[m]) return false;原创 2022-03-17 09:47:44 · 295 阅读 · 1 评论 -
关于素数判断
写作业的时候碰到素数判断相关的问题,特此记录一下方法防止忘记先看题目思路是,找出所有N以内的素数,再进行求和的判断此时一个快速有用的找素数算法就很有必要了算法:素数筛选法先说原理:原理很简单,当i是质(素)数的时候,i的所有的倍数必然是合数;如果i已经被判断不是质数了,那么再找到i后面的质数来把这个质数的倍数筛掉具体操作是:设定一个bool类型数组prime[N],规定所有奇数项为true,偶数项为false进行筛选,从2开始每找到一个质数,就建立一个循环把其后所有倍数都筛选掉(标为f原创 2022-03-16 10:51:51 · 327 阅读 · 1 评论 -
C++的高精乘+高精加
题目想法这题的原型就是在简单的求阶乘和基础上加入一个高精度操作那么把求阶乘的两步操作用升级版的高精度函数代替即可???? 所说的两步操作即为:// FOR循环内 第一步单独求每一项阶乘 第二步把各项相加 代码实现如下:for(int i = 0; i < N; ++i) { num *= i; sum += num;}题解【BY SocietyNiu】#include<iostream>using name...原创 2021-11-16 19:43:24 · 818 阅读 · 1 评论 -
字符串与数字转化
题目想法思路其实很简单,输入号码到数组里再转化一个进行操作比对即可???? 但是其实还可以优化,即巧用字符常量,这样避免了过多的的字符串转化操作让人联想到紫书里敲键盘的那题洛谷题解【BY Alg_xize】#include<iostream>using namespace std;int main(){ char a[14],mod[12]="0123456789X"; scanf("%s",a); /* for(int i=0;i<原创 2021-11-16 15:26:16 · 830 阅读 · 0 评论 -
判断回文的方法 懒得写注释了
#include<iostream>#include<string>using namespace std;#define N 10000int main(){ char arr[N]; cin >> arr; char* str = arr; char* a = str; int i = 0, k = 0; while (*a != '\0') { ++a; ++i; } --a; while (*str != '\0') {.原创 2021-11-12 09:59:47 · 59 阅读 · 0 评论 -
AK杯被虐赛
不多说给虐就完事了寄!#include<stdio.h>#include<math.h>#include<stdlib.h>#define MAXX 1010int a[MAXX];int b[MAXX];void save( int *a, int n){ for ( int i = 1; i <= n; ++i) { scanf_s("%d", &a[i]); }}long long mul( in.原创 2021-10-21 17:39:04 · 94 阅读 · 0 评论 -
10.12 关于素数
今天又被素数卡住了突然发现CPP(C Primer Plus不是C++)上面的例子也并非能解决目前遇到的题目,所以不要盲目套用啊孩子,重要的是学习他的思路最后发现原来是数学知识问题......我们来看看同一道题两种做法会产生怎样不同的合奏题目刚到手的疑问Q: 怎么区分素数和合数A: 用标记和IF语句,若程序运行到IF里面,说明是合数,则改变标记的值Q: 循环到哪一步为止A:到除数为N的根号为止Q: 若出现多次幂的情况怎么舍去一个输...原创 2021-10-13 00:10:41 · 78 阅读 · 0 评论 -
2021-10-10 卡了我很久的二分法
本来开开心心抄答案结果抄了个错的整个晚修都耗在里边了/(ㄒoㄒ)/~~不过他的解答模板我觉得还是可以学习的:题目解题思路答题过程结果亮点感想下面我们来实践一下题目解题思路用二分法求根,即利用零点存在定理,取(a,b)中间一半的区间(a, mid)检验:是否有两端点函数值相乘小于零,也即f(a) * f(b) < 0若f(a) * f(b) < 0,则继续取(a, mid)的中间一半区间计算若f(a) * f...原创 2021-10-10 21:51:09 · 205 阅读 · 4 评论