ENG  RUSTimus Online Judge
Online Judge
Problems
Authors
Online contests
About Online Judge
Frequently asked questions
Site news
Webboard
Links
Problem set
Submit solution
Judge status
Guide
Register
Update your info
Authors ranklist
Current contest
Scheduled contests
Past contests
Rules
back to board

Discussion of Problem 1585. Penguins

I don't know what the wrong if,help!
Posted by csyzcyj 24 Feb 2013 06:56
PLOBLEM 1:

I have seen the topic "c WA why?",and I have a problem:Why the for cycle's range should be 1 to 2*n but not 1 to n?Help me,I don't know.

PLOBLEM 2:

my program:

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int n,max=0,count[3],a;
char s[30],ans,max1;
int main()
{
    freopen("input.txt","r",stdin);
    freopen("output.txt","w",stdout);
    scanf("%d",&n);
    count[1]=0;count[2]=0;count[3]=0;
    for(int i=1;i<=2*n;i++)
    {
          scanf("%s",s);
          if(s[0]=='E')
          {
                count[1]++;
                if(count[1]>max) {max=count[1];max1='E';}
                }
          else if(s[0]=='L')
          {
                count[2]++;
                if(count[2]>max) {max=count[2];max1='L';}
                }
          else if(s[0]=='M')
          {
                count[3]++;
                if(count[3]>max) {max=count[3];max1='M';}
                }
    }
    if(max1=='E')     printf("Emperor Penguin");
    else if(max1=='L') printf("Little Penguin");
    else if(max1=='M') printf("Macaroni Penguin");
    return 0;
}
It can be right in my conputer(printf"Macaroni Penguin"),but it's WRONG#1 in the test.
And if I change for cycle's range into 1 to n,it's WRONG,and printf"Emperor Penguin"
I don't know.
SO,please help me,thank you!

now,this problem can pass #6 point,but W7
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int n,max=0,count[3],a;
char s[30],ans,max1,e=0,l=0,m=0;
int main()
{
    scanf("%d\n",&n);
    count[1]=1;count[2]=1;count[3]=1;
    for(int i=1;i<=2*n;i++)
    {
          scanf("%s",s);
          if(s[0]=='E')  e++;
          else if(s[0]=='L')  l++;
          else if(s[0]=='M')  m++;
    }
    if(e>l&&e>m) printf("Emperor Penguin");
    if(l>e&&l>m) printf("Little Penguin");
    if(m>e&&m>l) printf("Macaroni Penguin");

    //system("pause");
    return 0;
}

Edited by author 24.02.2013 07:27

Edited by author 24.02.2013 07:42