Submission #424664

# Submission time Handle Problem Language Result Execution time Memory
424664 2021-06-12T08:54:09 Z Hazem Toys (CEOI18_toy) C++14
0 / 100
1 ms 204 KB
#include <bits/stdc++.h>
using namespace std;
 
#define LL long long
#define F first
#define S second
#define pii pair<int,int>
#define piii pair<pair<int,int>,int>

const int N = 2e5+10;
const int M = 1e3+10;
const LL INF = 1e12;
const LL LINF = 2e18;
const LL MOD = 1e9+7;
const double PI = 3.141592653589793;

vector<LL>vec;
set<LL>st;
int n;

void bt(int pos,int sum,LL p){

    if(pos==vec.size()){
        if(p==n)st.insert(sum);
        return ;
    }

    if(n%(p*vec[pos])==0)
        bt(pos,sum+vec[pos]-1,p*vec[pos]);
    bt(pos+1,sum,p);
}

int main(){

    //freopen("out.txt","w",stdout);

    scanf("%d",&n);

    for(LL i=2;i*i<=n;i++){
        if(n%i==0)vec.push_back(i);
        if((n%i==0)&&(n/i!=i))vec.push_back(n/i);
    }

    bt(0,0,1);
    printf("%d\n",st.size());
    for(auto x:st)
        printf("%lld ",x);
}

Compilation message

toy.cpp: In function 'void bt(int, int, long long int)':
toy.cpp:23:11: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   23 |     if(pos==vec.size()){
      |        ~~~^~~~~~~~~~~~
toy.cpp: In function 'int main()':
toy.cpp:45:14: warning: format '%d' expects argument of type 'int', but argument 2 has type 'std::set<long long int>::size_type' {aka 'long unsigned int'} [-Wformat=]
   45 |     printf("%d\n",st.size());
      |             ~^    ~~~~~~~~~
      |              |           |
      |              int         std::set<long long int>::size_type {aka long unsigned int}
      |             %ld
toy.cpp:37:10: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   37 |     scanf("%d",&n);
      |     ~~~~~^~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 0 ms 204 KB Output is correct
2 Incorrect 1 ms 204 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 204 KB Output is correct
2 Incorrect 1 ms 204 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 204 KB Output is correct
2 Incorrect 1 ms 204 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 204 KB Output is correct
2 Incorrect 1 ms 204 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 204 KB Output is correct
2 Incorrect 1 ms 204 KB Output isn't correct
3 Halted 0 ms 0 KB -