76最大效益
#include <bits/stdc++.h>
using namespace std;
void whetheradd(int arr[][5],int flag[][5],int i,int j,int &total){
if((arr[i][j]>=arr[i][0]||flag[i][0]==1)&&(arr[i][j]>=arr[i][1]||flag[i][1]==1)&&(arr[i][j]>=arr[i][2]||flag[i][2]==1)
&&(arr[i][j]>=arr[i][3]||flag[i][3]==1)&&(arr[i][j]>=arr[i][4]||flag[i][4]==1)){
if((arr[i][j]>=arr[0][j]||flag[0][j]==1)&&(arr[i][j]>=arr[1][j]||flag[1][j]==1)&&(arr[i][j]>=arr[2][j]||flag[2][j]==1)&&
(arr[i][j]>=arr[3][j]||flag[3][j]==1)&&(arr[i][j]>=arr[4][j]||flag[4][j]==1)){
total += arr[i][j];
flag[i][0]=1;
flag[i][1]=1;
flag[i][2]=1;
flag[i][3]=1;
flag[i][4]=1;
flag[0][j]=1;
flag[1][j]=1;
flag[2][j]=1;
flag[3][j]=1;
flag[4][j]=1;
}
}
}
bool check(int flag[][5]){
for(int i=0;i<5;i++){
for(int j=0;j<5;j++){
if(flag[i][j]==0){
return false;
}
}
}
return true;
}
int main(){
int arr[5][5];
while(scanf("%d",&arr[0][0])!=EOF){
for(int i=0;i<5;i++){
for(int j=0;j<5;j++){
if(i==0&&j==0){
continue;
}
scanf("%d",&arr[i][j]);
}
}
int flag[5][5];
for(int i=0;i<5;i++){
for(int j=0;j<5;j++){
flag[i][j]=0;
}
}
int total=0;
while(!check(flag)){
for(int i=0;i<5;i++){
for(int j=0;j<5;j++){
if(flag[i][j]==0){
whetheradd(arr,flag,i,j,total);
}
}
}
}
printf("%d\n",total);
}
}
77螺旋方阵
#include <bits/stdc++.h>
using namespace std;
void right(int arr[][101], int i, int j, int &count, int edge);
void down(int arr[][101], int i, int j, int &count, int edge);
void left(int arr[][101], int i, int j, int &count, int edge);
void up(int arr[][101], int i, int j, int &count, int edge);
void right(int arr[][101],int i,int j,int &count,int edge){
if(count+1 >edge*edge){
return;
}
if(i>=edge||j>=edge||i<0||j<0||arr[i][j]!=0){
down(arr,i+1,j-1,count,edge);
return;
}
count++;
arr[i][j]=count;
right(arr,i,j+1,count,edge);
}
void down(int arr[][101],int i,int j,int &count,int edge){
if(count+1 >edge*edge){
return;
}
if(i>=edge||j>=edge||i<0||j<0||arr[i][j]!=0){
left(arr,i-1,j-1,count,edge);
return;
}
count++;
arr[i][j]=count;
down(arr,i+1,j,count,edge);
}
void left(int arr[][101],int i,int j,int &count,int edge){
if(count+1 >edge*edge){
return;
}
if(i>=edge||j>=edge||i<0||j<0||arr[i][j]!=0){
up(arr,i-1,j+1,count,edge);
return;
}
count++;
arr[i][j]=count;
left(arr,i,j-1,count,edge);
}
void up(int arr[][101],int i,int j,int &count,int edge){
if(count+1 >edge*edge){
return;
}
if(i>=edge||j>=edge||i<0||j<0||arr[i][j]!=0){
right(arr,i+1,j+1,count,edge);
return;
}
count++;
arr[i][j]=count;
up(arr,i-1,j,count,edge);
}
int main(){
int edge;
while(scanf("%d",&edge)!=EOF){
int arr[edge][101];
for(int i=0;i<edge;i++){
for(int j=0;j<edge;j++){
arr[i][j]=0;
}
}
int count=0;
right(arr,0,0,count,edge);
for(int i=0;i<edge;i++){
for(int j=0;j<edge;j++){
if(j!=edge-1) printf("%d ",arr[i][j]);
else printf("%d",arr[i][j]);
}
printf("\n");
}
printf("\n");
}
}
78方块转换
#include <bits/stdc++.h>
using namespace std;
bool check1(char arr[][100],char arr2[][100],int edge){
for(int i=0;i<edge;i++){
for(int j=0;j<edge;j++){
if(arr[i][j]!=arr2[j][edge-i-1]){
return false;
}
}
}
return true;
}
bool check2(char arr[][100],char arr2[][100],int edge){
for(int i=0;i<edge;i++){
for(int j=0;j<edge;j++){
if(arr[i][j]!=arr2[edge-1-i][edge-1-j]){
return false;
}
}
}
return true;
}
bool check3(char arr[][100],char arr2[][100],int edge){
for(int i=0;i<edge;i++){
for(int j=0;j<edge;j++){
if(arr[i][j]!=arr2[2-j][i]){
return false;
}
}
}
return true;
}
bool check4(char arr[][100],char arr2[][100],int edge){
for(int i=0;i<edge;i++){
for(int j=0;j<edge;j++){
if(arr[i][j]!=arr2[i][edge-1-j]){
return false;
}
}
}
return true;
}
bool check5(char arr[][100],char arr2[][100],int edge){
char arr3[edge][100];
for(int i=0;i<edge;i++){
for(int j=0;j<edge;j++){
arr3[i][j]=arr[i][edge-1-j];
}
}
return check1(arr3,arr2,edge)||check2(arr3,arr2,edge)||check3(arr3,arr2,edge);
}
bool check6(char arr[][100],char arr2[][100],int edge){
for(int i=0;i<edge;i++){
for(int j=0;j<edge;j++){
if(arr[i][j]!=arr2[i][j]){
return false;
}
}
}
return true;
}
int main() {
int edge;
scanf("%d",&edge);
char arr[edge][100]; // 初始化为全0(空字符)
for(int i=0;i<edge;i++){
char input[60]; // 临时存储输入的字符串
scanf("%s", input); // 输入---
for(int j=0;j<edge;j++){
arr[i][j] = input[j];
}
}
char arr2[edge][100];
for(int i=0;i<edge;i++){
char input[60]; // 临时存储输入的字符串
scanf("%s", input); // 输入---
for(int j=0;j<edge;j++){
arr2[i][j] = input[j];
}
}
if(check1(arr,arr2,edge)){
printf("1");
return 0;
}else if(check2(arr,arr2,edge)){
printf("2");
return 0;
}else if(check3(arr,arr2,edge)){
printf("3");
return 0;
}else if(check4(arr,arr2,edge)){
printf("4");
return 0;
}else if(check5(arr,arr2,edge)){
printf("5");
}else if(check6(arr,arr2,edge)){
printf("6");
}else{
printf("7");
}
return 0;
}
物联网已被建议用于住宅、商业、工业和政府环境中的智能建筑建设。智能建筑可以是购物中心、住宅、医院或高层办公楼。智能建筑需要对供暖、空调、照明和环境变化进行监测和调节。他们可以监督建筑安全、灭火和电梯运行。智能建筑技术侧重于为建筑物带来更详细的监测和传感"意识"。
计算机是一种电子设备,可以接收一组指令,然后通过对数值数据进行计算或操纵其他形式的信息来执行该程序。
现代高科技世界的出现离不开计算机的发展。不同类型和大小的计算机在整个社会中用于存储和处理数据,从秘密的政府文件到银行交易再到私人家庭账户。计算机通过自动化技术开辟了制造业的新时代,并增强了现代通信系统。它们是几乎所有研究和应用技术领域的重要工具,从构建宇宙模型到制作明天的天气报告,它们的使用本身就开辟了新的猜测领域。数据库服务和计算机网络提供了各种各样的信息来源"。同样的先进技术也可能侵犯个人和商业隐私。计算机犯罪已成为现代技术价格中的众多风险之一。
