답안 #293059

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
293059 2020-09-07T15:53:01 Z 최은수(#5797) 로봇 골프 (ROI19_golf) C++17
0 / 100
96 ms 4524 KB
#include<iostream>
#include<vector>
#include<map>
#include<algorithm>
#define ep emplace
#define eb emplace_back
#define fi first
#define se second
#define all(x) (x).begin(),(x).end()
using namespace std;
typedef long long ll;
typedef pair<int,int>pi;
typedef pair<ll,ll>pl;
const int inf=1e9+7;
const ll INF=1e18;
const int mod=998244353;
inline int add(int x,int y)
{
    return x+y<mod?x+y:x+y-mod;
}
inline int sub(int x,int y)
{
    return x<y?x+mod-y:x-y;
}
inline int mul(int x,int y)
{
    return(int)((ll)x*y%mod);
}
map<int,int>mp;
int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);
    int n,m,k;
    cin>>n>>m>>k;
    int ans=0;
    vector<pi>v(k);
    for(pi&t:v)
    {
        int d;
        cin>>t.fi>>t.se>>d;
        if(d!=1)
            return 1/0;
    }
    sort(all(v),[](const pi&x,const pi&y){return pi(x.fi+x.se,x.fi)<pi(y.fi+y.se,y.fi);});
    for(int i=1;i<k;i++)
        if(v[i-1].fi==v[i].fi-1&&v[i-1].se==v[i].se+1)
            mp[v[i].fi-v[i].se-1]=max(mp[v[i].fi-v[i].se-1],min(v[i].fi-1,v[i].se));
    for(int i=1;i<k;i++)
        if(v[i-1].fi==v[i].fi-2&&v[i-1].se==v[i].se+2)
            mp[v[i].fi-v[i].se-2]=max(mp[v[i].fi-v[i].se-2],min(v[i].fi-2,v[i].se));
    for(pi&t:v)
        mp[t.fi-t.se]=max(mp[t.fi-t.se],min(t.fi,t.se));
    for(auto t:mp)
        ans=add(ans,t.se%mod);
    cout<<ans<<endl;
    return 0;
}

Compilation message

golf.cpp: In function 'int main()':
golf.cpp:43:21: warning: division by zero [-Wdiv-by-zero]
   43 |             return 1/0;
      |                    ~^~
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 384 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 384 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 1152 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 384 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 96 ms 4524 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 96 ms 4524 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 384 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 384 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 384 KB Output isn't correct
2 Halted 0 ms 0 KB -