2016年2月5日 星期五

二信C++寒假練習-zerojudge之一

// a001. 哈囉
#include <iostream>
using namespace std;
int main() {
    string s;
    while(cin >> s)
  {
        cout << "hello, "<< s << endl;
    }
    return 0;
}

// a002. 簡易加法
#include <iostream>
using namespace std;
int main()
{
  int a,b;
  while(cin>>a)
  {
    cin>>b;
    cout <<a+b<<'\n';
  }
  return 0;
}

// a003. 兩光法師占卜術
#include <iostream>
using namespace std;
int main()
{
    int m,d,s;
    while(cin>>m){
      cin >> d;
      s=(m*2+d)%3;
      if(s==0) cout<<"普通\n";
      else if(s==1) cout<<"\n";
      else   cout<<"大吉\n";
    }
    return 0;
}

// a004. 文文的求婚
#include <iostream>
using namespace std;
int main()
{
    int y;
    bool z;
    while(cin>>y){
      z=true;
      if(y%100==0 && y%400!=0) z=false;
      if(y%4!=0) z=false;
      if(z) cout<<"閏年\n";
      else  cout<<"平年\n";
    }
    return 0;
}

// a005. Eva 的回家作業
#include<iostream>
using namespace std;
int main()
{
   int n,a,b,c,d,e;
   cin >>n;
   while(n--)
    {
      cin>>a>>b>>c>>d;  e=b-a;
     
      if(e!=(c-b) || e!=(d-c))
                      cout<<a<<" "<<b<<" "<<c<<" "<<d<<" "<<(d*b/a)<<endl;
      else  cout<<a<<" "<<b<<" "<<c<<" "<<d<<" "<<d+e<<endl;
    }

    return 0;
}

// a042. 平面圓形切割
#include <iostream>
using namespace std;
int main()
{
     int n;
  while( cin>>n )
  {
    cout<<(n*n-n+2)<<endl;
  }
  return 0;
}

// a044. 空間切割
#include <iostream>
using namespace std;
int main()
{
     int n;
  while( cin>>n )
  {
    cout<<(n*n*n+5*n)/6+1<<endl;
  }
  return 0;
}

// a053. Sagit's 計分程式 -- Sagit's 教學題
#include <iostream>
using namespace std;
int main( )
{
  int n,sco;
  while( cin>>n )
  {
    if(n<=10) sco=6*n;
    else if(n<=20) sco=40+2*n;
    else if(n<40) sco=60+n;
    else sco=100;
    cout<<sco<<endl;    
  }
    return 0 ;
}

// a058. MOD3
#include <iostream>
using namespace std;
int main( )
{
  int i,k,m,n;
  cin >>n;
     int a=0,b=0,c=0;
    for(i=0;i<n;i++)
    {  cin>>k;    m=k%3;
       if(m==0) a++;
       else if(m==1) b++;
       else c++;
    }
   cout<<a<<" "<<b<<" "<<c<<endl;
   return 0 ;
}

// a059: 完全平方和
#include <iostream>
using namespace std;
int pow2[33]; // 0^2 ~ 32^2
int main( )
{
   int i,j,lt,rt,n,sum;
   for(i=0;i<=32;i++) pow2[i]=i*i; //不使用數學函數
   cin >> n;
   for(i=1;i<=n;i++)
     {
        cin >> lt >> rt;
        sum=0;j=0;
        while(pow2[j]<lt) j++;
        for( ;pow2[j]<=rt;j++) sum+=pow2[j];
        cout<<"Case "<<i<<": "<<sum<<endl;    
     }
    return 0 ;
}

//a095. 麥哲倫的陰謀 -- 2011 TOI 培訓內容
#include <iostream>
using namespace std;
int main( )
{
  int m,n;
  while( cin>>n>>m )
  {
    if(n>m) cout<<m+1<<endl;
    else  cout<<m<<endl;    
  }
    return 0 ;
}

//a147. Print it all
#include <iostream>
using namespace std;
int main( )
{
  int i,j,n;
  while(1)
  {
     cin >> n;
     if(!n) break;
     if(n>1) cout << "1";
     for(i=2;i<n;i++) {
       if(i%7==0)continue;
        cout <<" " << i;    
     }
     cout << "\n";
  }
    return 0 ;
}

// a148. You Cannot Pass?!
#include <iostream>
using namespace std;
int main( )
 {
    int i,k,n;
    while ( cin>>n ) {
      float sum=0;
      for(i=0;i<n;i++)
      {
          cin>>k;
          sum+=k;
      }
      if(sum/n>59) cout<<"no"<<endl;
      else cout<<"yes"<<endl;
    }
    return 0 ;
}

// a244. 新手訓練 ~ for + if -- 新手訓練系列 ~ 1
#include <iostream>
using namespace std;
int main( )
{
int n,a;
long long int b,c,d;
  cin >> n;
  for( ;n>0;n-- )
  {
    cin >> a >> b >> c; //雖然為整數,但計算後可能 long long
    if(a==1) d=b+c;
    else if(a==2) d=b-c;  
    else if(a==3) d=b*c;  
    else  d=b/c;  
    cout << d << endl;
  }
    return 0 ;
}

// a799. 正值國
#include <iostream>
using namespace std;
int main()
{
   int n;
    while (cin >>n)
    {
      if(n<0)n=-n;
      cout << n << endl;
    }
    return 0;
}

// b572. 忘了東西的小傑 -- 板橋高中練習題
#include <iostream>
using namespace std;
int main()
{
const int oneday = 24*60;
   int i,j,n, h1,m1, h2,m2 , m3;
        cin >>n;
        while(n--)
        {
           cin >> h1 >> m1 >> h2 >> m2 >> m3;
                int t1=h1*60+m1 , t2=h2*60+m2;
                if (t1>t2) t2 += oneday;
                if(t1+m3>t2) cout <<"No" << endl;
                else cout << "Yes" << endl;
        }
        return 0;
}

// b758. 牛仔(ㄗˇ)很忙
#include <iostream>
using namespace std;
const int oneday = 24*60;
int main()
{
        int x,y,t,h,m;
        while(cin >> x >> y)
        {
                t=(x*60+y+150)% oneday;   // 24*60
                h=t/60;  m=t%60;
                if(h<10) cout <<0;
                cout << h << ":" ;
                if(m<10)cout<<0;
                cout << m << endl ;
                // 也可以使用 iomanip setw(2) setfill
        }
  return 0;
}




0 意見:

張貼留言