四平方和
#include<cstdio>
#include<cmath>
int main(){
int N,d;
scanf("%d",&N);
for(int a=0;a*a<=N;a++){
for(int b=a;a*a+b*b<=N;b++){//b=a 是为了b的字典序比a大
for(int c=b;a*a+b*b+c*c<=N;c++){
d=sqrt(N-a*a-b*b-c*c);//d是int型,右边为整数或小数都会转为整数
if(a*a+b*b+c*c+d*d==N){
printf("%d %d %d %d\n",a,b,c,d);
return 0;//使用break只能跳出一层循环
}
}
}
}
return 0;
}
装饰效果
#include<cstdio>
int a[1005];
int main(){
int n;
int ans=0;
scanf("%d",&n);
for(int i=0;i<n;i++){
scanf("%d",&a[i]);
}
for(int i=0;i<n;i++){
for(int j=i;j<n;j++){
int sum=0;
for(int k=i;k<=j;k++){
sum+=a[k];
}
if(sum>ans){
ans=sum;
}
}
}
printf("%d",ans);
return 0;
}
双截棍
#include<iostream>
#include<algorithm>
using namespace std;
int a[105]={};
int main(){
int n,ans=10000;
cin>>n;
for(int i=0;i<n;i++){
scanf("%d",&a[i]);
}
sort(a,a+n);
for(int i=0;i<n-1;i++){//i<n-1 是为了防止数组越界
int b=a[i+1]-a[i];
if(b<ans){
ans=b;
}
}
cout<<ans;
return 0;
}