提出 #73262620


ソースコード 拡げる

#include <bits/stdc++.h>
using namespace std;
#include <atcoder/all>
using namespace atcoder;
using ll=long long;
using ld=long double;
using vi=vector<int>;
using vvi=vector<vi>;
using vvvi=vector<vvi>;
using vd=vector<double>;
using vvd=vector<vd>;
using vvvd=vector<vvd>;
using vld=vector<ld>;
using vvld=vector<vld>;
using vvvld=vector<vvld>;
using vc=vector<char>;
using vvc=vector<vc>;
using vvvc=vector<vvc>;
using vs=vector<string>;
using vvs=vector<vs>;
using vvvs=vector<vvs>;
using vl=vector<ll>;
using vvl=vector<vl>;
using vvvl=vector<vvl>;
using vb=vector<bool>;
using vvb=vector<vb>;
using vvvb=vector<vvb>;
using pi=pair<int,int>;
using vpi=vector<pi>;
using vvpi=vector<vpi>;
using vvvpi=vector<vvpi>;
using pl=pair<ll,ll>;
using vpl=vector<pl>;
using vvpl=vector<vpl>;
using vvvpl=vector<vvpl>;
using si=set<int>;
using vsi=vector<si>;
using vvsi=vector<vsi>;
using vvvsi=vector<vvsi>;
using sl=set<ll>;
using vsl=vector<sl>;
using vvsl=vector<vsl>;
using vvvsl=vector<vvsl>;
using ss=set<string>;
using svi=set<vi>;
using svvi=set<vvi>;
using svvvi=set<vvvi>;
using svl=set<vl>;
using svvl=set<vvl>;
using svvvl=set<vvvl>;
using svs=set<vs>;
using sb=set<bool>;
using spi=set<pi>;
using svpi=set<vpi>;
using svvpi=set<vvpi>;
using svvvpi=set<vvvpi>;
using spl=set<pl>;
using svpl=set<vpl>;
using svvpl=set<vvpl>;
using svvvpl=set<vvvpl>;
template <typename T> using PQ=priority_queue<T>;
template <typename T> using PQG=priority_queue<T,vector<T>,greater<T>>;

#define endl '\n'
#define rep(i, n) for (ll i = 0; i < (int)(n); i++)
#define rep2(i,s,n) for (ll i = (s); i < (int)(n); i++) 
#define rep3(i,n) for (ll i = 1; i <= (int)(n); i++)
#define rep4(i,n) for (ll i = (int)(n)-1;i >= 0;i--)
#define Yes(a) cout<<(a?"Yes":"No")<<"\n"
#define YES(a) cout<<(a?"YES":"NO")<<"\n"
#define Takahashi(a) cout<<(a?"Takahashi":"Aoki")
#define Alice(a) cout<<(a?"Alice":"Bob")
#define First(a) cout<<(a?"First":"Second")
#define Possible(a) cout<<(a?"Possible":"Impossible")
#define which(a,s,t) cout<<(a?s:t)<<"\n"
#define fls flush(cout)
#define fix(a) cout<<fixed<<setprecision(a)
#define fi first
#define se second
#define pb push_back
#define pf push_front
#define ppb pop_back
#define ppf pop_front
#define em emplace
#define ef emplace_front
#define eb emplace_back
#define all(v) v.begin(),v.end()
#define rall(v) v.rbegin(),v.rend()
#define SORT(v) sort(all(v))
#define RSORT(v) sort(rall(v))
#define REV(v) reverse(all(v))
#define MIN(v) *min_element(all(v))
#define MAX(v) *max_element(all(v))
#define SZ(v) (ll)(v.size())
#define uniq(v) v.erase(unique(all(v),end(v)))
template <typename T, typename S> bool chmax(T &a, const S &b){return(a<b?a=b,1:0);}
template <typename T, typename S> bool chmin(T &a, const S &b){return(a>b?a=b,1:0);}

namespace io
{
inline void scan(int &a){cin>>a;}
inline void scan(ll &a){cin>>a;}
inline void scan(char &a){cin>>a;}
inline void scan(string &a){cin>>a;}
inline void scan(float &a){cin>>a;}
inline void scan(double &a){cin>>a;}
inline void scan(ld &a){cin>>a;}
inline void scan(vb &v){
    rep(i,v.size()){
        int a;
        scan(a);
        v[i]=a;
    }
}
template<typename T>
inline void scan(vector<T> &v){for(auto &a:v)scan(a);}
template<typename T>
inline void scan(deque<T> &v){for(auto &a:v)scan(a);}
template<typename T,size_t size>
inline void scan(array<T,size> &v){for(auto &a:v)scan(a);}
template<typename T,typename S>
inline void scan(pair<T,S> &p){scan(p.fi);scan(p.se);}
template<typename T,size_t size>
inline void scan(T (&v)[size]){for(auto &a:v)scan(a);}
template<typename T>
inline void scan(T &a){cin>>a;}
inline void in(){}
template<typename F,typename...B>
inline void in(F &f,B &...b){
    scan(f);
    in(b...);
}
inline void print(){cout<<" ";}
inline void print(const bool &a){cout<<a;}
inline void print(const int &a){cout<<a;}
inline void print(const ll &a){cout<<a;}
inline void print(const char &a){cout<<a;}
inline void print(const char a[]){cout<<a;}
inline void print(const string &a){cout<<a;}
inline void print(const float &a){cout<<a;}
inline void print(const double &a){cout<<a;}
inline void print(const ld &a){cout<<a;}
template<typename T>
inline void print(const vector<T> &v){
    if(v.empty())return;
    print(v[0]);
    for(auto i=v.begin();++i!=v.end();){
        cout<<' ';
        print(*i);
    }
}
template<typename T>
inline void print(const deque<T> &v){
    if(v.empty())return;
    print(v[0]);
    for(auto i=v.begin();++i!=v.end();){
        cout<<' ';
        print(*i);
    }
}
template<typename T,size_t size>
inline void print(const array<T,size> &v){
    print (v[0]);
    for(auto i=v.begin();++i!=v.end();){
        cout<<' ';
        print(*i);
    }
}
template<typename T,typename S>
inline void print(const pair<T,S> &p){print(p.fi);print();print(p.se);}
template<typename T,size_t size>
inline void print(const T (&v)[size]){
    print(v[0]);
    for(auto i=v;++i!=end(v);){
        cout<<' ';
        print(*i);
    }
}
template<typename T>
inline void print(const T &a){cout<<a;}
inline void out(){cout<<"\n";}
template<typename T>
inline void out(const T &t){
    print (t);
    cout<<"\n";
}
template <typename F,typename...B>
inline void out(const F &f,const B &...b){
    print(f);
    cout<<' ';
    out(b...);
}
}
using namespace io;

//using mint=modint998244353;
using mint=modint1000000007;
template<typename T> using BIT=fenwick_tree<T>;
const int INF=1<<30;
const ll LINF=1LL<<60;
const ld EPS=1e-9;
const ld PI=3.141592653589793238;
const int dx[8]={0,1,0,-1,-1,-1,1,1};
const int dy[8]={1,0,-1,0,-1,1,-1,1};

bool outgrid(int x,int y,int H,int W){
    return !(0<=x&&x<H&&0<=y&&y<W);
}

namespace mintnCk{
    const int nCkmax=5000000;
    mint fac[nCkmax],finv[nCkmax],inv[nCkmax];
    void nCkinit(){
        const ll mod=mint::mod();
        fac[0]=fac[1]=1;
        finv[0]=finv[1]=1;
        inv[1]=1;
        rep2(i,2,nCkmax){
            fac[i]=fac[i-1]*i;
            inv[i]=mod-inv[mod%i]*(mod/i);
            finv[i]=finv[i-1]*inv[i];
        }
    }
    template<typename T,typename S>
    mint nCk(T n,S k){
        if(n<k)return 0;
        if(n<0||k<0)return 0;
        return fac[n]*finv[k]*finv[n-k];
    }
}
//int main(){using namespace mintnCk; nCkinit();nCk(n,k)}
namespace intnCk{
    ll mod;
    const int nCkmax=5000000;
    ll fac[nCkmax],finv[nCkmax],inv[nCkmax];
    template<typename T>
    void nCkinit(T a){
        mod=a;
        fac[0]=fac[1]=1;
        finv[0]=finv[1]=1;
        inv[1]=1;
        for(int i=2;i<nCkmax;i++){
            fac[i]=fac[i-1]*i%mod;
            inv[i]=mod-inv[mod%i]*(mod/i)%mod;
            finv[i]=finv[i-1]*inv[i]%mod;
        }
    }
    template<typename T,typename S>
    ll nCk(T n,S k){
        if(n<k)return 0;
        if(n<0||k<0)return 0;
        return fac[n]*(finv[k]*finv[n-k]%mod)%mod;
    }
}
//int main(){using namespace intnCk; nCkinit(mod);nCk(n,k)}

namespace my_numbers
{
    vpl prime_factorize(ll a){
        vpl rtn(0);
        for(ll p=2;p*p<=a;p++){
            if(a%p)continue;
            int num=0;
            while(a%p==0){
                num++;
                a/=p;
            }
            rtn.pb({p,num});
        }
        if(a!=1)rtn.pb({a,1});
        return rtn;
    }
}
using namespace my_numbers;

ll op(ll l,ll r){return max(l,r);}
ll e(){return -1;}

int main(){
    ll N,K;
    in(N,K);
    vl A(N);
    in(A);
    ll wa=0,ac=LINF;
    while(wa+1<ac){
        ll mid=(wa+ac)/2;
        bool ok=true;
        ll now=0;
        int cnt=0;
        rep(i,N){
            now+=A[i];
            if(now>=mid){
                cnt++;
                now=0;
            }
        }
        if(cnt>=K)wa=mid;
        else ac=mid;
    }
    out(wa);
    //this is not wrong answer:)
}

提出情報

提出日時
問題 D - 配達ルートの分割
ユーザ tanpaku
言語 C++23 (GCC 15.2.0)
得点 400
コード長 8031 Byte
結果 AC
実行時間 60 ms
メモリ 62784 KiB

コンパイルエラー

./Main.cpp: In function 'int main()':
./Main.cpp:287:14: warning: unused variable 'ok' [-Wunused-variable]
  287 |         bool ok=true;
      |              ^~

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 400 / 400
結果
AC × 3
AC × 81
セット名 テストケース
Sample sample01.txt, sample02.txt, sample03.txt
All sample01.txt, sample02.txt, sample03.txt, in01.txt, in02.txt, in03.txt, in04.txt, in05.txt, in06.txt, in07.txt, in08.txt, in09.txt, in10.txt, in11.txt, in12.txt, in13.txt, in14.txt, in15.txt, in16.txt, in17.txt, in18.txt, in19.txt, in20.txt, in21.txt, in22.txt, in23.txt, in24.txt, in25.txt, in26.txt, in27.txt, in28.txt, in29.txt, in30.txt, in31.txt, in32.txt, in33.txt, in34.txt, in35.txt, in36.txt, in37.txt, in38.txt, in39.txt, in40.txt, in41.txt, in42.txt, in43.txt, in44.txt, in45.txt, in46.txt, in47.txt, in48.txt, in49.txt, in50.txt, in51.txt, in52.txt, in53.txt, in54.txt, in55.txt, in56.txt, in57.txt, in58.txt, in59.txt, in60.txt, in61.txt, in62.txt, in63.txt, in64.txt, in65.txt, in66.txt, in67.txt, in68.txt, in69.txt, in70.txt, in71.txt, in72.txt, in73.txt, in74.txt, in75.txt, in76.txt, in77.txt, in78.txt
ケース名 結果 実行時間 メモリ
in01.txt AC 26 ms 62204 KiB
in02.txt AC 26 ms 62180 KiB
in03.txt AC 25 ms 62176 KiB
in04.txt AC 26 ms 62140 KiB
in05.txt AC 26 ms 62076 KiB
in06.txt AC 26 ms 62160 KiB
in07.txt AC 25 ms 62160 KiB
in08.txt AC 25 ms 62116 KiB
in09.txt AC 57 ms 62656 KiB
in10.txt AC 57 ms 62640 KiB
in11.txt AC 57 ms 62640 KiB
in12.txt AC 51 ms 62660 KiB
in13.txt AC 57 ms 62724 KiB
in14.txt AC 60 ms 62660 KiB
in15.txt AC 58 ms 62776 KiB
in16.txt AC 25 ms 62180 KiB
in17.txt AC 57 ms 62716 KiB
in18.txt AC 40 ms 62596 KiB
in19.txt AC 40 ms 62636 KiB
in20.txt AC 60 ms 62676 KiB
in21.txt AC 57 ms 62596 KiB
in22.txt AC 48 ms 62724 KiB
in23.txt AC 48 ms 62596 KiB
in24.txt AC 50 ms 62656 KiB
in25.txt AC 50 ms 62660 KiB
in26.txt AC 60 ms 62660 KiB
in27.txt AC 41 ms 62644 KiB
in28.txt AC 59 ms 62732 KiB
in29.txt AC 25 ms 62160 KiB
in30.txt AC 25 ms 62140 KiB
in31.txt AC 25 ms 61968 KiB
in32.txt AC 24 ms 62228 KiB
in33.txt AC 24 ms 62076 KiB
in34.txt AC 24 ms 62152 KiB
in35.txt AC 24 ms 62180 KiB
in36.txt AC 24 ms 62180 KiB
in37.txt AC 25 ms 62180 KiB
in38.txt AC 25 ms 62100 KiB
in39.txt AC 40 ms 62676 KiB
in40.txt AC 33 ms 62256 KiB
in41.txt AC 59 ms 62716 KiB
in42.txt AC 51 ms 62656 KiB
in43.txt AC 51 ms 62716 KiB
in44.txt AC 58 ms 62660 KiB
in45.txt AC 40 ms 62284 KiB
in46.txt AC 51 ms 62680 KiB
in47.txt AC 58 ms 62644 KiB
in48.txt AC 25 ms 62244 KiB
in49.txt AC 25 ms 62220 KiB
in50.txt AC 57 ms 62716 KiB
in51.txt AC 57 ms 62640 KiB
in52.txt AC 58 ms 62596 KiB
in53.txt AC 52 ms 62640 KiB
in54.txt AC 52 ms 62568 KiB
in55.txt AC 45 ms 62660 KiB
in56.txt AC 45 ms 62676 KiB
in57.txt AC 56 ms 62784 KiB
in58.txt AC 54 ms 62772 KiB
in59.txt AC 58 ms 62656 KiB
in60.txt AC 59 ms 62656 KiB
in61.txt AC 25 ms 62036 KiB
in62.txt AC 25 ms 62112 KiB
in63.txt AC 25 ms 62180 KiB
in64.txt AC 25 ms 62204 KiB
in65.txt AC 25 ms 62092 KiB
in66.txt AC 25 ms 62244 KiB
in67.txt AC 24 ms 62100 KiB
in68.txt AC 24 ms 62140 KiB
in69.txt AC 24 ms 62076 KiB
in70.txt AC 24 ms 62140 KiB
in71.txt AC 24 ms 62140 KiB
in72.txt AC 24 ms 62056 KiB
in73.txt AC 24 ms 62140 KiB
in74.txt AC 24 ms 62152 KiB
in75.txt AC 24 ms 62160 KiB
in76.txt AC 24 ms 62244 KiB
in77.txt AC 24 ms 62220 KiB
in78.txt AC 24 ms 62172 KiB
sample01.txt AC 24 ms 62244 KiB
sample02.txt AC 24 ms 62180 KiB
sample03.txt AC 24 ms 62244 KiB