Submission #972093

# Submission time Handle Problem Language Result Execution time Memory
972093 2024-04-30T04:50:03 Z batsukh2006 Jakarta Skyscrapers (APIO15_skyscraper) C++17
10 / 100
19 ms 756 KB
#include<iostream>
#include<stdio.h>
#include<math.h>
#include<map>
#include<string>
#include<algorithm>
#include<vector>
#include<string.h>
#include<utility>
#include<set>
#include<cmath>
#include<queue>
#include<deque>
#include<functional>
#include<stack>
#include<limits.h>
#include<iomanip>
#include<unordered_map> 
#include<numeric>
#include<tuple>
#include<bitset>
using namespace std;
#define MOD 1000000007
//#define int long long
#define ss second
#define ff first
#define endl '\n'
signed main(){
    // freopen("file.in", "r", stdin);
    // freopen("file.out", "w", stdout);
    ios::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    
    int n,m; cin>>n>>m;
    vector<int> b(m+1),p(m+1);
    for(int i=1; i<=m; i++) cin>>b[i]>>p[i];
    int cnt=n-1;
    stack<int> q;
    q.push(2);
    vector<bool> vis(m+1);
    vector<int> dp(m+1,1e9);
    dp[2]=0;
    vis[2]=1;
    while(cnt>0&&!q.empty()){
    	int need=q.size();
    	while(need--){
    		int c=q.top();
    		q.pop();
    		cnt--;
    		for(int i=1; i<=m; i++){
    			if(abs(b[i]-b[c])%p[i]==0){
    				dp[i]=min(dp[i],abs(b[i]-b[c])/p[i]+dp[c]);
    			}
    		}
    	}
    	for(int i=1; i<=m; i++){
    		if(!vis[i]&&dp[i]!=1e9){
    			vis[i]=1;
				q.push(i);
			}
    	}
    }
    int ans=1e9;
    for(int i=2; i<=m; i++){
    	if(abs(b[1]-b[i])%p[1]==0){
			ans=min(ans,abs(b[1]-b[i])/p[1]+dp[i]);
		}
	}
    if(ans==1e9) cout<<-1;
    else cout<<ans;
    return 0;
}



























# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 1 ms 596 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 1 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 0 ms 348 KB Output is correct
7 Correct 0 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 1 ms 348 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 1 ms 348 KB Output is correct
7 Correct 0 ms 348 KB Output is correct
8 Correct 0 ms 348 KB Output is correct
9 Correct 0 ms 348 KB Output is correct
10 Correct 1 ms 348 KB Output is correct
11 Correct 2 ms 348 KB Output is correct
12 Incorrect 18 ms 348 KB Output isn't correct
13 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB Output is correct
2 Correct 1 ms 348 KB Output is correct
3 Correct 0 ms 344 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 0 ms 348 KB Output is correct
7 Correct 0 ms 348 KB Output is correct
8 Correct 0 ms 756 KB Output is correct
9 Correct 0 ms 348 KB Output is correct
10 Correct 1 ms 348 KB Output is correct
11 Correct 2 ms 348 KB Output is correct
12 Incorrect 18 ms 500 KB Output isn't correct
13 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB Output is correct
2 Correct 0 ms 344 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 0 ms 348 KB Output is correct
7 Correct 0 ms 348 KB Output is correct
8 Correct 0 ms 348 KB Output is correct
9 Correct 0 ms 348 KB Output is correct
10 Correct 1 ms 348 KB Output is correct
11 Correct 2 ms 488 KB Output is correct
12 Incorrect 18 ms 484 KB Output isn't correct
13 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 1 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 0 ms 348 KB Output is correct
7 Correct 1 ms 348 KB Output is correct
8 Correct 0 ms 348 KB Output is correct
9 Correct 0 ms 348 KB Output is correct
10 Correct 1 ms 348 KB Output is correct
11 Correct 2 ms 348 KB Output is correct
12 Incorrect 19 ms 496 KB Output isn't correct
13 Halted 0 ms 0 KB -