NPSC補完計劃

登入註冊帳號.

請輸入帳號, 密碼以及預計登入時間
進階搜尋  

最新消息:

歡迎光臨NPSC補完計劃

+ NPSC補完計劃
 最新文章
頁: [1] 2 3 ... 10
 1 
 於: 十一月 18, 2017, 08:59:30 pm 
作者 Felicity - 最新文章 由 Felicity
這是我在比賽結束後才解出來的
用我的自編測資試過
不過沒有上傳Kattis檢查過
所以如果有錯,敬請見諒
#include<stdlib.h>
#include<stdio.h>
int main()
{
   int i,j,k,n,b=0,c=0,d,odd;
   long ans=0;
   scanf("%d",&n);
   int a[n];
   for(i=0;i<n;i++)
   {
      scanf("%d",&a);
   }
   for(i=2;i<=n;i++)
   {
      for(j=0;j<n-i+1;j++)
      {
         b=0;
         c=0;
         odd=0;
         while(c<i&&odd%2==0)
         {
            b++;
            odd=0;
            for(k=0;k<i;k++)
            {
               if(a[j+k]==b)
               {
                  odd++;
                  c++;
               }
            }
         }
         if(odd%2==0)
         {
            ans++;
         }
      }
   }
   printf("%ld\n",ans);
   return 0;
}

 2 
 於: 十一月 18, 2017, 02:19:45 pm 
作者 Felicity - 最新文章 由 Felicity
#include<stdlib.h>
#include<stdio.h>
int main()
{
   int i,t;
   scanf("%d",&i);
   if(i%2==1)
   {
      if(i>1)
         printf("4");
      else
         printf("0");
   }
   for(t=0;t<i/2;t++)
   {
      printf("8");
   }
   if(i==0)
      printf("1");
   printf("\n");
   return 0;
}

 3 
 於: 十一月 18, 2017, 02:19:12 pm 
作者 Felicity - 最新文章 由 Felicity
判斷式比較複雜
耐心慢慢寫就可以了
#include<stdlib.h>
#include<stdio.h>
int main()
{
   int n,m,a,b,i,c,j;
   scanf("%d %d %d %d",&n,&m,&a,&b);
   int s[m][2];
   for(i=0;i<m;i++)
   {
      scanf("%d",&c);
      if(c>a)
      {
         if(c>b)
         {
            if(a>b)
            {
               j=1;
            }
            else
            {
               j=0;
            }
         }
         else
         {
            j=1;
         }
      }
      else
      {
         if(c<b)
         {
            if(a>b)
            {
               j=1;
            }
            else
            {
               j=0;
            }
         }
         else
         {
            j=0;
         }
      }
      if(j==1)
      {
         a++;
         b--;
      }
      else
      {
         a--;
         b++;
      }
      if(a==0)
         a=n;
      if(b==0)
         b=n;
      if(a==n+1)
         a=1;
      if(b==n+1)
         b=1;
      s[0]=a;
      s[1]=b;   
   }
   for(i=0;i<m;i++)
      printf("%d %d\n",s[0],s[1]);
   return 0;
}

 4 
 於: 十一月 18, 2017, 02:17:51 pm 
作者 Felicity - 最新文章 由 Felicity
#include<stdlib.h>
#include<stdio.h>
int main()
{
   unsigned long long a,b,c;
   scanf("%lld %lld",&a,&b);
   c=a/b;
   if(a%b)
      c++;
   printf("%lld\n",c);
   return 0;
}

 5 
 於: 十一月 18, 2017, 02:16:54 pm 
作者 Felicity - 最新文章 由 Felicity
不難,但要慢慢來
#include<stdlib.h>
#include<stdio.h>
int stop(int [],int [],int [],int [],int []);
int main()
{
   int n,i,k,l,j,c,d;
   scanf("%d",&n);
   int ans[n],a[n][5][5],b[25];
   for(i=0;i<n;i++)
   {
      scanf("%d %d %d %d %d",&a[0][0],&a[0][1],&a[0][2],&a[0][3],&a[0][4]);
      scanf("%d %d %d %d %d",&a[1][0],&a[1][1],&a[1][2],&a[1][3],&a[1][4]);
      scanf("%d %d %d %d %d",&a[2][0],&a[2][1],&a[2][2],&a[2][3],&a[2][4]);
      scanf("%d %d %d %d %d",&a[3][0],&a[3][1],&a[3][2],&a[3][3],&a[3][4]);
      scanf("%d %d %d %d %d",&a[4][0],&a[4][1],&a[4][2],&a[4][3],&a[4][4]);
   }
   for(i=0;i<25;i++)
      scanf("%d",&b);
   for(i=0;i<n;i++)
   {
      l=0;
      while(stop(a[0],a[1],a[2],a[3],a[4]))
      {
         for(k=0;k<25;k++)
         {
            c=k/5;
            d=k%5;
            if(b[l]==a[c][d])
            {
               a[c][d]=0;
               break;
            }
         }
         l++;
      }
      ans=l;
   }
   for(i=5;i<=25;i++)
   {
      k=0;
      for(j=0;j<n;j++)
      {
         if(ans[j]==i)
         {
            k=1;
            break;
         }
      }
      if(k==1)
      {
         printf("%d:",i);
         for(j=0;j<n;j++)
         {
            if(ans[j]==i)
            {
               printf(" %d",j+1);
            }
         }
         printf("\n");
      }
   }
   return 0;
}
int stop(int b[],int c[],int d[],int e[],int f[])
{
   int i,a[5][5];
   for(i=0;i<5;i++)
   {
      a[0]=b;
   }
   for(i=0;i<5;i++)
   {
      a[1]=c;
   }
   for(i=0;i<5;i++)
   {
      a[2]=d;
   }
   for(i=0;i<5;i++)
   {
      a[3]=e;
   }
   for(i=0;i<5;i++)
   {
      a[4]=f;
   }
   for(i=0;i<5;i++)
   {
      if(a[0]==0&&a[1]==0&&a[2]==0&&a[3]==0&&a[4]==0)
         return 0;
      if(a[0]==0&&a[1]==0&&a[2]==0&&a[3]==0&&a[4]==0)
         return 0;
   }
   if(a[0][0]==0&&a[1][1]==0&&a[2][2]==0&&a[3][3]==0&&a[4][4]==0)
      return 0;
   if(a[0][4]==0&&a[1][3]==0&&a[2][2]==0&&a[3][1]==0&&a[4][0]==0)
      return 0;
   return 1;
}

 6 
 於: 十一月 18, 2017, 02:15:57 pm 
作者 Felicity - 最新文章 由 Felicity
#include<stdlib.h>
#include<stdio.h>
int main()
{
   int a=0,b=0,c,i,ans=1;
   for(i=0;i<6;i++)
   {
      scanf("%d %d",&a,&b);
      if(i==0)
      {
         c=b;
      }
      if(a==6&&b<c)
         ans=0;
   }
   if(ans==0)
      printf("No\n");
   else
      printf("Yes\n");
   return 0;
}

 7 
 於: 十一月 14, 2017, 10:39:54 pm 
作者 skipper - 最新文章 由 Felicity
這是C語言的解法
代碼: [選擇]
#include<stdlib.h>
#include<stdio.h>
int main()
{
int T,i,j,a;
scanf("%d",&T);
int ans[T][2];
for(i=0;i<T;i++)
{
        scanf("%d",&a);
        ans[i][0]=a%9;
        ans[i][1]=a/9;
}
for(i=0;i<T;i++)
{
        if(ans[i][0]!=0)
                printf("%d",ans[i][0]);
        for(j=0;j<ans[i][1];j++)
                printf("9");
           printf("\n");
}
return 0;
}

 8 
 於: 十一月 14, 2017, 09:22:21 pm 
作者 Felicity - 最新文章 由 Felicity
其實關鍵在Input的後兩個數字,其他可以不用理他
代碼: [選擇]
#include<stdlib.h>
#include<stdio.h>
int main()
{
int c,d,e,a,b;
scanf("%d %d %d %d %d",&c,&d,&e,&a,&b);
if(a>5)
{
if(b==1)
    printf("unhappy\n");
                else
            printf("happy\n");
}
else
{
if(b==1)
    printf("happy\n");
                else
            printf("unhappy\n");
}
return 0;
}

 9 
 於: 十一月 14, 2017, 08:20:34 pm 
作者 Felicity - 最新文章 由 Felicity
代碼: [選擇]
#include<stdlib.h>
#include<stdio.h>
int main()
{
int T,s=0,e=0,i,a=0,b=0;
scanf("%d",&T);
char n[T];
scanf("%s",n);
for(i=0;i<T;i++)
{
if(n[i]=='s')
            s++;
        else
            e++;
        if(e-b>s-a+b)
        {
        a=i+1;
        b=e;
}
}
if(e>s)
        printf("-1");
    else
    printf("%d",a);
return 0;
}

 10 
 於: 十一月 13, 2017, 10:02:21 pm 
作者 Felicity - 最新文章 由 Felicity
代碼: [選擇]
#include<stdlib.h>
#include<stdio.h>
int main()
{
int i,T,n,m,k;
scanf("%d",&T);
int ans[T];
for(i=0;i<T;i++)
{
scanf("%d %d %d",&n,&m,&k);
ans[i]=m/n;
if(m%n>=k)
            ans[i]++;
}
for(i=0;i<T;i++)
    printf("%d\n",ans[i]);
return 0;
}

頁: [1] 2 3 ... 10