栏目分类:
子分类:
返回
终身学习网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
终身学习网 > IT > 软件开发 > 后端开发 > C/C++/C#

浙江理工大学 ACM 200 题

C/C++/C# 更新时间:发布时间: 百科书网 趣学号

1001 - 1100 题过于简单,请自行探索。
绝大多数代码都可以AC,编写过程中可能有纰漏。

1101 问题 L: 零基础学C/C++101——最大数与数列最后一个数交换

#include
using namespace std;
int main(){
	int n;
	while(cin>>n){
		int a[110]={},max0=-1,post0=-1;
		for(int i=1;i<=n;i++){
			cin>>a[i];
			if(max0 

1106 问题 M: 零基础学C/C++106——进制转换

#include
using namespace std;
int flag;
string intToA(int n,int radix){
	flag=-1;
	if(n<0){
		flag=1;
		n=-n;
	}
	string ans="";
	do{
		int t=n%radix;
		if(t>=0&&t<=9)	ans+=t+'0';
		else ans+=t-10+'A';
		n/=radix;
	}while(n!=0);
	reverse(ans.begin(),ans.end());
	return ans;	
}
int main(){
	int n,m;
	while(cin>>n>>m){
		string a=intToA(n,m);
		if(flag==1) cout<<'-';
		cout< 

1108 问题 N: 零基础学C/C++108——程序设计竞赛

#include
using namespace std;
int main(){
	int n;
	while(cin>>n){
		int a[100]={};
		for(int i=0;i>a[i];
		sort(a,a+n);
		for(int i=n-1;i>=0;i--)
			cout< 

1109 问题 O: 零基础学C/C++109——省赛归来

#include
using namespace std;
int main(){
	int n;
	while(cin>>n and n!=0){
		int a[100]={};
		for(int i=0;i>a[i];
		for(int i=0;i 

1110 问题 A: 零基础学C/C++110——N个数从小到大排序

#include
using namespace std;
int main(){
	int n;
	while(cin>>n and n!=0){
		int a[100]={};
		for(int i=0;i>a[i];
		sort(a,a+n);
		for(int i=n-1;i>=0;i--)
			cout< 

1111 问题 B: 零基础学C/C++111——N个数从大到小排序

#include
using namespace std;
int main(){
	int n;
	while(cin>>n and n!=0){
		int a[100]={};
		for(int i=0;i>a[i];
		sort(a,a+n);
		for(int i=0;i 

1112 问题 C: 零基础学C/C++112——偶数排序

#include
using namespace std;
int main(){
	int n;
	while(cin>>n and n!=0){
		int a[100]={},x,j=0;
		for(int i=0;i>x;
			if(x%2==0)a[j++]=x;
		}
		sort(a,a+j);
		for(int i=j-1;i>=0;i--)
			cout< 

1113 问题 D: 零基础学C/C++113——并列排名

#include
using namespace std;
bool cmp(int x,int y){
	return x>y;
}
int main(){
	int n;
	while(cin>>n){
		int a[100]={},p;
		for(int i=0;i>a[i];
		cin>>p; 
		sort(a,a+n,cmp);
		for(int i=0;i 

1114 问题 E: 零基础学C/C++114——直接插入排序

#include
using namespace std;
int main(){
	int t;
	cin>>t;
	for(int q=0;q>n;
		for(int i=0;i>a[i];
		int k;
		for(int i=1;i=0;j--){
				k=0;
				if(a[i]>=a[j]){
					k=j+1;
					cnt++;
					break;
				}
				else cnt++;
			}
			int b=a[i];
			for(int j=i;j>k;j--)
				a[j]=a[j-1];
			a[k]=b;
		}				
		cout< 

1115 问题 F: 零基础学C/C++115——校友捐款

#include
using namespace std;
int main(){
	int n;
	while(cin>>n){
		int a[1000]={},sum=0,max0=-1;
		for(int i=0;i>a[i];
			sum+=a[i];
			max0=max(max0,a[i]);
		}
		sort(a,a+n);
		cout<=0;i--)
			cout< 

1116 问题 A: 零基础学C/C++116——矩阵转置

#include
using namespace std;
int main(){
	int n,m;
	while(cin>>n>>m){
		int a[15][15]={};
		for(int i=1;i<=n;i++)
			for(int j=1;j<=m;j++)
				cin>>a[i][j];
		for(int i=1;i<=m;i++){
			for(int j=1;j<=n;j++)
				cout< 

1117 问题 B: 零基础学C/C++117——输出矩阵

#include
using namespace std;
int main(){
	int n,m;
	while(cin>>n>>m){
		int k=0;
		for(int i=1;i<=n;i++){
			for(int j=1;j<=m;j++)
				cout<<++k<<" ";
			cout< 

1118 问题 C: 零基础学C/C++118——弓型矩阵

#include
using namespace std;
int main(){
	int n,m;
	while(cin>>n>>m){
		int p=0,q=0;
		for(int i=1;i<=n;i++){
			if(i%2==1){
				for(int j=1;j<=m;j++)
					printf("%2d ",++p);	
			}
			else{
				p+=m+1;
				for(int j=1;j<=m;j++)
					printf("%2d ",--p);
				p+=m-1;
			}
			cout< 

1119 问题 D: 零基础学C/C++119——矩阵整理

#include
using namespace std;
int main(){
	int m,n;
	while(cin>>m>>n){
		int a[15][15]={},sum;
		for(int i=1;i<=m;i++){
			sum=0;
			for(int j=1;j<=n;j++){
				cin>>a[i][j];
				sum+=a[i][j];
			}
			a[i][n+1]=sum;
		}
		for(int j=1;j<=n+1;j++)
			cout< 

1120 问题 E: 零基础学C/C++120——矩阵对角线求和

#include
using namespace std;
int main(){
	int n;
	while(cin>>n){
		int a[15][15]={},sum1=0,sum2=0,p=n+1;
		for(int i=1;i<=n;i++){
			p--;
			for(int j=1;j<=n;j++){
				cin>>a[i][j];//其实用不到数组2333 
				if(i==j)sum1+=a[i][j];
				if(j==p)sum2+=a[i][j];
			}
		}
		cout< 

1121 问题 F: 零基础学C/C++121——判断是否上三角矩阵

#include
using namespace std;
int main(){
	int n;
	while(cin>>n){
		int a[15][15]={},p,f=-1;
		for(int i=1;i<=n;i++){
			p=i-1;
			for(int j=1;j<=n;j++){
				cin>>a[i][j];
				if(j<=p and a[i][j]!=0) f=1;
			}
		}
		if(f==1) cout<<"NO";
		else cout<<"YES";
		cout< 

未完待续 2021.10.3

1122 问题 G: 零基础学C/C++122——杨辉三角

#include
using namespace std;
#define LL unsigned long long
int main(){
	int n;
	while(cin>>n){
		if(n==1){
			cout<<"1nn";
			continue;
		}
		LL a[100][100]={};
		for(int i=1;i<=n;i++){
			a[i][1]=1;
			a[i][i]=1;
		}
		cout<<"1n";
		cout<<"1 1n";
		for(int i=3;i<=n;i++){
			cout<<"1 ";
			for(int j=2;j 

1123 问题 H: 零基础学C/C++123——矩阵鞍点

AC 100% 代码(借用了网上的思路)

#include 
using namespace std;
int main(){
    int n;
    while(cin>>n){
    	int i,j,a[6][6];
	    for(i=0;i>a[i][j];
	    int k=0,y=0,flag=-1,p=0;  
	    if(n==1) cout<<"0 0n";
	    else{
	        for(i=0;ia[j][k]){
	                    y=j;
	                    break;
	                }
	            if(i==y){
	                flag=0;
	                break;
	            }
	        }
	        if(flag==0) printf("%d %dn",i,k);
	        else cout<<"NOn";
	    }
	}
    return 0;
}

AC 80% 代码

#include
using namespace std;
int main(){
	int n;
	while(cin>>n){
		int a[15][15]={};
		int x[15]={},y[15]={},p1[15]={},p2[15]={},q1[15]={},q2[15]={};
		memset(x,-1,sizeof(x));
		memset(y,100,sizeof(y));
		for(int i=0;i>a[i][j];
				if(x[i]a[i][j]){
					y[j]=a[i][j];
					q1[j]=i;
					q2[j]=j;
				}
			}
		}
		int f=-1;
		for(int i=0;i 

1124 问题 I: 零基础学C/C++124——海选女主角
这道题 题目真***恶心

#include
#define LL long long
using namespace std;
int main(){
	int n,m;
	while(cin>>n>>m){
		int p,q;
		LL max0=0;
		for(int i=1;i<=n;i++){
			for(int j=1;j<=m;j++){
			    LL tmp;
			    cin>>tmp;
				if( abs(max0) < abs(tmp) ){
					max0=tmp;
					p=i;q=j;
				}
			}
		}
		printf("%d %d %lldn",p,q,max0);
	}
	return 0;
} 

1125 问题 J: 零基础学C/C++125——矩阵乘积

#include
#include
using namespace std;
int main(){
	int a[15][15],b[15][15],c[15][15]={};
	int m,n,i,j,k;
	while(cin>>m>>n){
		memset(c,0,sizeof(c));
		for(i=0;i>a[i][j];
		for(i=0;i>b[i][j];
		for(i=0;i 

未完待续 21.10.4

1126 问题 A: 零基础学C/C++126——回型矩阵

这道题折磨了我半天

#include
#include
using namespace std;
int n,m,i,j;
int a[20][20],b[20][20];
void init0(){
	for(i=0;i<20;i++)
		for(j=0;j<20;j++){
			a[i][j]=0;b[i][j]=-1;
		}
	for(i=0;i<=n+1;i++){
		b[i][0]=1;
		b[i][m+1]=1;
	}
	for(j=0;j<=m+1;j++){
		b[0][j]=1;
		b[n+1][j]=1;
	}
}
void outa(){
	for(i=1;i<=n;i++){
		for(j=1;j<=m;j++)
			printf("%2d ",a[i][j]);
		cout<>n>>m){
		init0();
		int x=1,y=1,k=0;
		ex=0;ey=0;
		while(k 

1127 问题 B: 零基础学C/C++127——矩阵下三角元素之和

#include
using namespace std;
long long n,i,j,sum,x;
int main(){
	while(cin>>n){
		sum=0;
		for(i=1;i<=n;i++)
			for(j=1;j<=n;j++){
				cin>>x;
				if(j<=i) sum+=x;
			}
		cout< 

1128 问题 C: 零基础学C/C++128——矩阵计算

又臭又长的代码

#include
#include
using namespace std;
int n,a[100][100],b[100][100],c[100][100];
int r1,c1,r2,c2,i,j,p1,q1,k;
char s[5];
void output(int x,int y){
    for(int i=0;i>r1>>c1;
	for(i=0;i>a[i][j];
    cin>>r2>>c2;
    for(i=0;i>b[i][j];
}
int main(){
    cin>>n;
    while(n--){
        init();
        while(cin>>s){
            if(s[0]=='e') break;
            if(s[0]=='-'){
            	memset(c,0,sizeof(c));
            	for(i=0;i 

1129 问题 D: 零基础学C/C++129——蛇行矩阵

#include
using namespace std;
int n,k,i,j,x,y;
int kmax;
void KMAX(){
	kmax=0;
	for(i=1;i<=n;i++)
		kmax+=i;
}
int main(){
	while(cin>>n){
		KMAX();
		k=0;
		x=1;y=1;
		int a[110][110];
		while(k 

1130 问题 E: 零基础学C/C++130——二维数组右上角乘以x

#include
using namespace std;
long long n,x,i,j;
long long a[15][15];
int main(){
	while(cin>>n>>x){
		for(i=1;i<=n;i++){
			for(j=1;j<=n;j++){
				cin>>a[i][j];
				if(j>=i) a[i][j]*=x;
			}
		}
		for(i=1;i<=n;i++){
			for(j=1;j 

1131 问题 F: 零基础学C/C++131——二维数组左下角置0

#include
using namespace std;
int n,i,j;
long long a[15][15];
int main(){
	while(cin>>n){
		for(i=1;i<=n;i++){
			for(j=1;j<=n;j++){
				cin>>a[i][j];
				if(j<=i) a[i][j]=0;
			}
		}
		for(i=1;i<=n;i++){
			for(j=1;j 

1132 问题 G: 零基础学C/C++132——边界均值

#include
using namespace std;
long long n,i,j;
double sum,k;
long long a[15][15];
int main(){
	while(cin>>n){
		sum=0;
		k=0;
		for(i=1;i<=n;i++){
			for(j=1;j<=n;j++){
				cin>>a[i][j];
				if(i==1 or i==n or j==1 or j==n){
					sum+=a[i][j];
					k++;
				}
			}
		}
		printf("%.2fn",sum/k);
	}
	return 0;
}

1133 问题 H: 零基础学C/C++133——矩阵A+A’

#include
using namespace std;
long long n,i,j;
long long a[15][15],b[15][15];
int main(){
	while(cin>>n){
		for(i=1;i<=n;i++)
			for(j=1;j<=n;j++)
				cin>>a[i][j];
		for(i=1;i<=n;i++)
			for(j=1;j<=n;j++)
				b[i][j]=a[j][i];
		for(i=1;i<=n;i++){
			for(j=1;j 

1134 问题 I: 零基础学C/C++134——对称矩阵

#include
using namespace std;
long long n,i,j,flag;
long long a[15][15],b[15][15];
int main(){
	while(cin>>n){
		flag=-1;
		for(i=1;i<=n;i++)
			for(j=1;j<=n;j++)
				cin>>a[i][j];
		for(i=1;i<=n;i++)
			for(j=1;j<=n;j++)
				b[i][j]=a[j][i];
		for(i=1;i<=n;i++)
			for(j=1;j<=n;j++)
				if(a[i][j]!=b[i][j]) flag=1;
		if(flag==1) printf("Non");
		else printf("Yesn");
	}
	return 0;
}

1135 问题 J: 零基础学C/C++135——稀疏矩阵

#include
using namespace std;
int n,m,i,j,x;
double d;
int a[1010][1010];
int main(){
	while(cin>>n>>m>>d){
		x=0;
		for(i=0;i>a[i][j];
				if(a[i][j]==0)x++;
			}
		double rate=(double) ( (double) (n*m-x)/(double) (n*m) );
		if(rate 

未完待续 21.10.5

转载请注明:文章转载自 www.051e.com
本文地址:http://www.051e.com/it/296254.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 ©2023-2025 051e.com

ICP备案号:京ICP备12030808号