2024年6.7--6.17学习总结

2024年6.7--6.17学习总结

一:java

看了向上转型,向下转型,继承,super,构造器。

二:考试

6月6号考了英语期末,听力填词,听力+个人总结,难度还好,但是早八,难受。

13号考了开卷的模式识别,一半的分都在抄书,剩下的是书上例题改点数据,还行。

15号考了六级,累死我了。

中间穿插着在复习计网,形式语言,做程序设计的pre,补计网作业,补机器智能大作业,形式语言的作业,期末周人麻了。后面还有18号的毛概,24号的计网,26号的形式语言。

三:洛谷

6.9高精度加

string add(string str1,string str2){
    string str;
	int len1=str1.length();
	int len2=str2.length();
	int temp,cf; 
	if(len1>len2){
		for(int i=0;i<len1-len2;i++){
			str2='0'+str2;
		}
	}//先将长度补到一样
	for(int i=len1-1;i>=0;i--){
		temp=str1[i]-'0'+str2[i]-'0'+cf;
		cf=temp/10;
		temp=temp%10;
		str=char('0'+temp)+str;
	}
	if(cf==1){
		str='1'+str;
	}
	return str;
}

6.16奖学金排序(重载cmp)

struct stu{
	int order,ach[3]={0},tot;
};

bool cmp(const &stu a,const &stu b){
    if(a.tot!=b.tot) return a.tot>b.tot;
	else if(a.ach[0]!=b.ach[0]) return a.ach[0]>b.ach[0];
	else return a.order<b.order;
}

int main(){
    int n,temp,sign=5;
    stu m[maxn],x;
    //输入数据省略
    sort(m,m+n);
}

6.17选数(递归搜索,素数判断)

#include <bits/stdc++.h>
using namespace std;
int n,k,a[30],ans;


bool isprime(int a){
    if(a==1) return 0;
    for(int i=2;i*i<=a;i++){
		if(a%i==0) return false;
	}
	return true;
}

void dfs(int temp,int sum,int startx){
	//temp表示已经选了几个数,sum表示现在总和,startx表示现在选的数
	 if(temp==k){
	 	if(isprime(sum)){
	 		ans++;
	 		return;
		 }
	 }
	 for(int i=startx;i<n;i++){
	 	dfs(temp+1,sum+a[i],i+1);
	 }
	 return;
}

int main(){
	cin>>n>>k;
	for(int i=0;i<n;i++){
		cin>>a[i];
	}
	sort(a,a+n);
	dfs(0,0,0);
	cout<<ans;
}
posted @ 2024-06-17 20:57  vast_joy  阅读(11)  评论(0编辑  收藏  举报