atcoder ABC164(abc總結,......+向上取整 +map記錄).

A Sheep and Wolves

傳送門

太水了,不做贅述。

AC

#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
    int s,w;
    cin>>s>>w;
    if(w>=s)cout<<"unsafe"<<endl;
    else cout<<"safe"<<endl;
    return 0;
}

B battle

傳送門

題意:

有兩個人的monster戰鬥,看誰能獲勝(誰的怪先死,就輸了)

思路:

交叉做除法,算出兩兩的生命值。

  1. 這裏引入向上取整的公式
  2. int X=(A+D-1)/D; int Y=(C+B-1)/B;(這裏因爲可能本身便是倍數,所以要減1)

AC(樓主的代碼太醜了(沒用向上取整)

#include <iostream>
using namespace std;
int main()
{
    int a,b,c,d;
    cin>>a>>b>>c>>d;
    int t1=c/b+((c%b)?1:0);
    int t2=a/d+((a%d)?1:0);
   // cout<<c%b<<endl;
   // cout<<t1<<' '<<t2<<endl;
    if(t1<=t2)cout<<"Yes"<<endl;
    else cout<<"No"<<endl;
    return 0;
}

C題 gacha

傳送門

題意:

統計有多少種單詞

思路:

裸map即可

AC

#include <iostream>
#include <map>
#define For(i,x,y) for(register int i=(x); i<=(y); i++)
using namespace std;
map<string,int>ma;
int main()
{
    ios::sync_with_stdio(false);
    int n,ans=0;
    cin>>n;
    For(i,1,n)
    {
        string s;
        cin>>s;
        if(!ma.count(s))
        {
            ma[s]=1;
            ans++;
        }
    }
    cout<<ans<<endl;
    return 0;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章