qqcmm1015 2022-10-15 15:51 采纳率: 61.8%
浏览 34
已结题

有一个测试点错误,找不到

蓝总是一个非常喜欢看球的人。今天蓝总支持的球队有比赛, 蓝总想知道它是否获胜。

现蓝总在进行一个赌局,并对分数的规则做了一些修改:

若该分数是素数,则令该分数×他本身

若该分数是2的倍数,则令该分数×2

若该分数是3的倍数,则令该分数×3

eg. 5 对应的最终分数是 5×5=25;

蓝总寻思着应该能赢。

输入格式:
第一行输入两个正整数 n,m ; (1≤n,m≤100)

第二行包含 n 个整数以及一个字符,n 个整数代表该球队前 n 节比赛的得分,字符'Y'表示这是蓝总支持的球队,字符'N'表示不是蓝总支持的球队。 行输入整数 ∈[2,100]

第三行包含 m 个整数以及一个字符,m 个整数代表该球队前 m 节比赛的得分,字符'Y'表示这是蓝总支持的球队,字符'N'表示不是蓝总支持的球队。 行输入整数 ∈[2,100]

题目数据保证两队伍,其中一个是'Y',另一个是'N'

输出格式:
最终总分多的队伍胜利;

对于每组输入输出一行,若蓝总支持的球队胜利了输出"hei!";

若是平局或是败北,则输出"ying!"

输入样例:
4 3
91 75 42 27 N
37 18 73 Y
输出样例:
hei!
Hint
2既是素数,也是2的倍数,所以最后相应的乘上的权值是 2*2,所以2对应的最后答案是 2×(2×2)=8

#include<stdio.h>
int main()
{    int n,m,a,ret,rets,b,N,Y;
    int sum=0,SUM=0;
    char ch,CH;
    scanf("%d%d",&n,&m);
    for(int i=1;i<=n;i++)
        {scanf("%d",&a);
         ret=1;
         if(a%2==0)
             {sum=sum+a*2;
            }
         if(a%3==0)
             {sum=sum+a*3;
            }
         for(int j=2;j<=a;j++)
         {
             if(a==2){;
             }
             else if(a%j==0)
                 {ret=-1;
                 break;
                }
         }
         if(ret==1)
             {sum=sum+a*a;
            }                              
        }
    ch=getchar();
    ch=getchar();
    if(ch=='N')
        {N=sum;
        }
    else
        {Y=sum;
        }

    for(int k=1;k<=m;k++)
        {scanf("%d",&b);
         rets=1;
         if(b%2==0)
             {SUM=SUM+b*2;
            }
         if(b%3==0)
             {SUM=SUM+b*3;
            }
         for(int l=2;l<=b;l++)
         {
             if(b==2){;
             }
             else if(b%l==0)
                 {rets=-1;
                 break;
                }
         }
         if(rets==1)
             {SUM=SUM+b*b;
            }                              
        }
    CH=getchar();
    CH=getchar();
    if(CH=='N')
        {N=SUM;
        }
    else if(CH=='Y')
        {Y=SUM;
        }
    if(Y>N)
        {printf("hei!");
        }
    else
        {printf("ying!");
        }
    return 0;
}

  • 写回答

1条回答 默认 最新

  • sam0Lin 2022-10-15 23:55
    关注

    for(int l=2;l<=b;l++), 小于等于改为小于试试,

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 10月17日
  • 创建了问题 10月15日

悬赏问题

  • ¥15 如何让企业微信机器人实现消息汇总整合
  • ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题
  • ¥15 如何用Python爬取各高校教师公开的教育和工作经历
  • ¥15 TLE9879QXA40 电机驱动
  • ¥20 对于工程问题的非线性数学模型进行线性化
  • ¥15 Mirare PLUS 进行密钥认证?(详解)
  • ¥15 物体双站RCS和其组成阵列后的双站RCS关系验证
  • ¥20 想用ollama做一个自己的AI数据库
  • ¥15 关于qualoth编辑及缝合服装领子的问题解决方案探寻
  • ¥15 请问怎么才能复现这样的图呀