1 条题解

  • 0
    @ 2025-4-14 18:41:37

    C :

    #include <stdio.h>
    #include <string.h>
    char map[6][6];
    int main()
    {
    	char str[10];
    	while(gets(str))
    	{
    		int i,j,k,flag=0;
    		char ch;
    		memset(map,0,sizeof(map));
    		for(i=0;i<strlen(str);i++)
    		map[1][i+1] = str[i];
    		for(i=2;i<=4;i++)
    		{
    			gets(str);
    			for(j=0;j<strlen(str);j++)
    			map[i][j+1]=str[j];
    		}
    		//for(i=1;i<=4;i++)
    		//{
    		//	puts(map[i]);
    		//}
    		for(i=1;i<=4;i++)
    		{
    			for(j=1;j<4;j++)
    			{
    				if(map[i][j]==map[i][j+1])
    				{
    					ch = map[i][j];	
    					if(map[i+1][j]==ch||map[i+1][j+1]==ch||map[i-1][j]==ch||map[i-1][j+1]==ch)
    					{
    						flag = 1;
    						break;
    					}
    				}
    			}
    		}
    		if(flag)
    		printf("YES\n");
    		else
    		printf("NO\n");
    	}
    	return 0;
    }
    
    

    C++ :

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<cstdlib>
    #include<algorithm>
    using namespace std;
    char a[10][10];
    int main()
    {
       	int _ = 2;
        while(~scanf("%s", a[0]))
        {
            int flag=0;
            for(int i=1; i<4; i++)
                scanf("%s",&a[i]);
        //    printf("test%d\n", ++_);
        //    for(int i = 0; i < 4; i++)
       //     {
       //         printf("%s\n", a[i]);
       //     }
            for(int i=0; i<3; i++)
            {
                if(flag)break;
                for(int j=0; j<3; j++)
                {
                    if(a[i][j]==a[i][j+1]&&a[i][j]==a[i+1][j])
                    {
                        printf("YES\n");
                        flag=1;
                        break;
                    }
                    if(a[i][j]==a[i][j+1]&&a[i][j]==a[i+1][j+1])
                    {
                        printf("YES\n");
                        flag=2;
                        break;
                    }
                    if(a[i][j]==a[i+1][j]&&a[i][j]==a[i+1][j+1])
                    {
                        printf("YES\n");
                        flag=3;
                        break;
                    }
                    if(a[i][j+1]==a[i+1][j]&&a[i][j+1]==a[i+1][j+1])
                    {
                        printf("YES\n");
                        flag=4;
                        break;
                    }
                }
            }
            if(!flag)printf("NO\n");
        }
        return 0;
    }
    
    
    • 1

    信息

    ID
    3057
    时间
    1000ms
    内存
    128MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者