제출 #834330

#제출 시각아이디문제언어결과실행 시간메모리
834330TB_정렬하기 (IOI15_sorting)C++17
0 / 100
1 ms372 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long #define INF (ll)1e9+7 #define fo(i, x) for(ll i = 0; i<x;i++) #define pb push_back #define deb(x) cout << #x << " = " << x << endl; #define deb2(x, y) cout << #x << " = " << x << ", " << #y << " = " << y << endl; typedef vector<ll> vl; vl v; int findSwapPairs(int N, int S[], int M, int X[], int Y[], int P[], int Q[]) { P[0] = 0; Q[0] = 0; v.resize(N); fo(i, N) v[S[i]] = i; ll ans = 0; fo(i, N){ if(S[i] == i) continue; v[S[i]] = i; swap(S[i], S[v[i]]); P[i] = i; Q[i] = v[i]; ans++; } return ans; } /* static char _buffer[1024]; static int _currentChar = 0; static int _charsNumber = 0; static FILE *_inputFile, *_outputFile; static inline int _read() { if (_charsNumber < 0) { exit(1); } if (!_charsNumber || _currentChar == _charsNumber) { _charsNumber = (int)fread(_buffer, sizeof(_buffer[0]), sizeof(_buffer), _inputFile); _currentChar = 0; } if (_charsNumber <= 0) { return -1; } return _buffer[_currentChar++]; } static inline int _readInt() { int c, x, s; c = _read(); while (c <= 32) c = _read(); x = 0; s = 1; if (c == '-') { s = -1; c = _read(); } while (c > 32) { x *= 10; x += c - '0'; c = _read(); } if (s < 0) x = -x; return x; } int main() { _inputFile = fopen("sorting.in", "rb"); _outputFile = fopen("sorting.out", "w"); int N, M; N = _readInt(); int *S = (int*)malloc(sizeof(int) * (unsigned int)N); for (int i = 0; i < N; ++i) S[i] = _readInt(); M = _readInt(); int *X = (int*)malloc(sizeof(int) * (unsigned int)M), *Y = (int*)malloc(sizeof(int) * (unsigned int)M); for (int i = 0; i < M; ++i) { X[i] = _readInt(); Y[i] = _readInt(); } int *P = (int*)malloc(sizeof(int) * (unsigned int)M), *Q = (int*)malloc(sizeof(int) * (unsigned int)M); int ans = findSwapPairs(N, S, M, X, Y, P, Q); fprintf(_outputFile, "%d\n", ans); for (int i = 0; i < ans; ++i) fprintf(_outputFile, "%d %d\n", P[i], Q[i]); return 0; } */

컴파일 시 표준 에러 (stderr) 메시지

sorting.cpp: In function 'int findSwapPairs(int, int*, int, int*, int*, int*, int*)':
sorting.cpp:24:10: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
   24 |   P[i] = i;
      |          ^
sorting.cpp:25:13: warning: conversion from '__gnu_cxx::__alloc_traits<std::allocator<long long int>, long long int>::value_type' {aka 'long long int'} to 'int' may change value [-Wconversion]
   25 |   Q[i] = v[i];
      |             ^
sorting.cpp:28:9: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
   28 |  return ans;
      |         ^~~
sorting.cpp:14:39: warning: unused parameter 'M' [-Wunused-parameter]
   14 | int findSwapPairs(int N, int S[], int M, int X[], int Y[], int P[], int Q[]) {
      |                                   ~~~~^
sorting.cpp:14:46: warning: unused parameter 'X' [-Wunused-parameter]
   14 | int findSwapPairs(int N, int S[], int M, int X[], int Y[], int P[], int Q[]) {
      |                                          ~~~~^~~
sorting.cpp:14:55: warning: unused parameter 'Y' [-Wunused-parameter]
   14 | int findSwapPairs(int N, int S[], int M, int X[], int Y[], int P[], int Q[]) {
      |                                                   ~~~~^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...