2025科普日活动笔记

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const long long N=1;

//数的分解
int nu_re(int x){
    while(x){
        if() x%10;
        x/=10;
    }
    return _;
}

//数的反转

int nu_res(int x){
    int s=0;
    while(x){
        s=s*10+x%10;
        x/=10;
    }
    return s;
}

//素数判断

bool prime(int x){
    if(x<2) return 0;
    for(int i=2;i*i<=x;i++){
        if(x%i==0) return 0;
    }
	return 1;
}

//不包括自身的因数和

int s(int x){
    int sum=1;
    for(int i=2;i*i<=x;i++){
		if(x%i==0){
            if(x/i==i){
                sum+=i;
            }
            else sum+=i+x/i;
        }
    }
    return sum;
}
int main(){
    //文本输入输出
	//freopen("文件名.in","r",stdin);
	//freopen("文件名.out","w",stdout);
	
    //整型的使用范围:根据题目选择int/long long
    int a=1000000;//用long long
    cout<<a*a;//超int范围了用long long||((long long)a)*a||a*a*N
    
    //算术运算符:/ % (数的分解) (数的反转)
    int a=123456;
    123:a/100;
    456:a%100;
    234:a/10%1000;
    
    //函数:sqrt(),swap(),abs(),floor(),ceil(),round();
    
    //数组中的最大值
    int a[1000],n,mi=INT_MAX,mx=INT_MAX,sum=0;
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>a[i];
        if(mx<a[i]) mx=a[i];
        if(mx>a[i]) mi=a[i];
        sum+=a[i];
    }
    
    //字符串:字符串函数:substr,inster,find,erase,reverse(str.begin(),str.end());
    
    //一维数组:连续性判断:判断到倒数第2个,设flag,判断错误情况,flag=0,下一步操作;
    //一维数组最长子串问题:
    int ans=1,mx=0;
    for(int i=1/0;i<=n/n;i++){
        if(a[i]==a[i+1]){
            ans++;
            if(ans>mx) mx=ans;
            else ans=1;
        }
    }
    
    //桶计数 结构体排序
   
    return 0;
}

带草稿📕,🖊,📏


while数反转

int s=0; 
while (n != 0) {
      s = s * 10 + n % 10;
      n /= 10;  
}

while数分解

//例如:分解n,注意n分解以后值为0
while(n!=0){
    cout<<n%10<<" ";
    n/=10;
}

万能头文件

#include<bits/stdc++.h>
using namespace std;

int main(){

  return 0;
}

printf用法

printf("文本");
printf("%d %s %lf %c %f",a,b,c,d,e);
printf("\n");//换行
printf("%02d",x);//0:用0补位,2:补至2位
printf("%.2lf",x);//输出浮点型小数点后2位

常见函数

//cmath库
swap(a,b);//交换函数
pow(a,b);//求a的b次方
sqrt(x);//开根x;
abs(x);//求x的绝对值
ceil(x);//向上取整
floor(x);//向下取整
round(x);//四舍五入

常量设置

const int/*类型*/ x=100;//值
#define /*常量名 值*/;

类型空间

int:取值范围231231

long long:10181018

浮点型用double;

注意:字符型变量以ASCLL码值保存

字符常量书写格式:'字母'

位分离

x/1000;//最高位直接除
x/100%10;//x/位数%10
x%10;//末位取模10

scanf:引号内%_紧凑,','号后加&! '='是赋值||'= ='是等于

优先级

() > ! > +、-、*、/、% > <<、>> > <、>、>=...... > &&  > ||

三目运算符

1?1=true 2:1=false 3;

字符串

str+=str;
append(str);
substr(pos,len);
insert(pos,str);
find(str,pos,结果);
reverse(s.begin(),s.end());

freopen

freopen(".",r/w,stdin/stdout);

struct

struct ___{

}___;

常见自定义函数

bool prime(int x){
    if(x==0||x==1) return 0;
    for(int i=2;i*i<=x;i++) if(x%i==0) return 0;
  return 1;
}
bool cmp(;;;){
    if(__!=___) return ___;
    return ____;
}
sort(_+0/1/...,_+0/1/...+n,cmp);

字符串重点

#include<bits/stdc++.h>
using namespace std;
string s,str;//动态的字符数组

int main(){
	//freopen("apple.in","r",stdin);
	//freopen("apple.in","w",stdout);
	/*
	1.两个字符串可以相互赋值  swap(a,b);
	2.两个字符串可以直接判断是否相等
	3.判断大小(字典序)
	4.长度:字符串名.size()
	5.输入含有空格的字符串:getline(cin,);
	
	int a;
	cin>>a;
	getchar();
	getline(cin,s);*/
	//reverse(s.begin(),s.end());
	/*
	字符串函数:
	1.截取:substr:返回子串
	2.插入子串:insert(x,str);在下标x位置之前插入字符串str
	3.查找:find:find(str,x);从下标x开始查找直到找到第一个str返回首字母的下标
	4.删除:erase:erase(x,len);从下标x开始删除,删除的长度为len
	5.逆序:reverse(字符串名.begin(),字符串名.end());
	*/
	s="HelleHs";
	/*str="Hello";
	//cout<<s.substr(6,5);
	//s.insert(6,str);
	int x=0,l=str.size();
	while(1){
		int y=s.find(str,x);
		if(y==-1) break;
		if((y==0&&s[l]==' ')||(s[y-1]==' '&&s[y+l]==' ')||(y+l==s.size()&&s[y-1]==' '))cout<<y<<endl;
		x=y+l;
		
	}*/
	//s.erase(5,8);
	//cout<<s;
	str=s;
	reverse(s.begin(),s.end());
	if(str==s) cout<<"YES";
	else cout<<"NO";
	
	return 0;
}

Embedding an external PDF is no longer supported.

Download


Embedding an external PDF is no longer supported.

Download


Embedding an external PDF is no longer supported.

Download


Embedding an external PDF is no longer supported.

Download

0 条评论

目前还没有评论...